以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  请教:符合哪种情况选哪种,如何写?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=183386)

--  作者:qkl586
--  发布时间:2020/12/9 18:02:40
--  请教:符合哪种情况选哪种,如何写?
趋涨势加:TRIMPRICE(IF(趋涨势,箱差*1.3,0)),NODRAW,COLORRED;
趋涨势减:TRIMPRICE(IF(趋涨势,箱差*0.5,0)),NODRAW,COLORRED;
趋跌势加:TRIMPRICE(IF(趋跌势,箱差*0.5,0)),NODRAW,COLORRED;
趋跌势减:TRIMPRICE(IF(趋跌势,箱差*1.3,0)),NODRAW,COLORRED;
震荡势加:TRIMPRICE(IF(震荡势,箱差,0)),NODRAW,COLORRED;
震荡势减:TRIMPRICE(IF(震荡势,箱差,0)),NODRAW,COLORRED;
小箱差加:TRIMPRICE(IF(箱差<=3*MINDIFF,箱差*2,0)),NODRAW,COLORRED;
小箱差减:TRIMPRICE(IF(箱差<=3*MINDIFF,箱差*2,0)),NODRAW,COLORRED;
{以上四种情况不会同时发生,已验证当出现每种情况时取值都是正确的。现在我想在一条语句中实现分情况取值,但下面的写法不对,请教该如何正确表达。谢谢!}
上档加:趋涨势加 OR 趋跌势加 OR 震荡势加 OR 小箱差加;
下档减:趋涨势减 OR 趋跌势减 OR 震荡势减 OR 小箱差减;

--  作者:FireScript
--  发布时间:2020/12/10 9:05:13
--  
 你的意思是任意一个发生了 就获取哪个的值?

--  作者:qkl586
--  发布时间:2020/12/10 13:36:36
--  
是的
--  作者:FireScript
--  发布时间:2020/12/10 13:43:10
--  
 如果能确保在不满足的时候返回值是0 那就容易了。
直接这样加就行了,因为你不满足的时候是0,,所以直接+就行了
上档加:趋涨势加 + 趋跌势加 + 震荡势加 + 小箱差加;

--  作者:qkl586
--  发布时间:2020/12/10 15:15:38
--  
极简又有效的解决方案,太棒了,赞一个!