以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  求类似于CROSS函数的表达  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=181291)

--  作者:AMOS
--  发布时间:2020/7/21 9:00:26
--  求类似于CROSS函数的表达
想表达:先A>B,再A<B这两个动作,时间上有先后关系,且满足条件信号一直存在,(因为函数CROSS(A,B)只在穿越B的一刹那信号就消失了)
谢谢
--  作者:yukizzc
--  发布时间:2020/7/21 9:02:10
--  

bar1:barslast(cross(A,b));

bar2:barslast(cross(b,A));

 

判断这两个条件成立先后就好


--  作者:AMOS
--  发布时间:2020/7/21 10:35:42
--  
谢谢老师解答,
代码逻辑我是认同的,但测试中存在如下问题:
bar1:barslast(cross(A,b))>0;
信号只在交叉的一刹那间会消失( 似乎是not(cross(A,b))的含义),其它日内任何时间不管是当前的A>B还是B>A,信号都会存在。

而我的需求:先A<B(b线在上面),再A>B(a线在上面)这两个动作,时间上有先后关系,满足条件信号一直存在;
信号持续存在的前提是后面的A>B这个条件一直满足(若A<B信号应该消失,而实测不是这样的),
我尝试了自己写ref(A,1)<ref(B,1) and A>B;也不正确
请老师解惑,
谢谢

--  作者:AMOS
--  发布时间:2020/7/21 10:47:58
--  
补充:
cross(A,b);大部分是符合我想法的,但我需要的是满足当前A>B条件时信号一直存在,而函数cross只在交叉一刹那有信号,
而barslast(cross(A,b));解决了条件满足信号一直存在,但没有判断当前A>B这个条件 (即A<B也发出满足条件信号)
--  作者:yukizzc
--  发布时间:2020/7/21 10:49:28
--  

你意思要记录曾经出现过金叉的这种状况,比如早上金叉了,现在去看早上并没有金叉,也要记住早上金叉那个状态是吗

这个做不到。图表的判断一定是每次更新都是去读取现在读取到的状况,就好比你现在图上看到的close 均线都是现在的均线,不是早上你想当然看到的那个均线


--  作者:AMOS
--  发布时间:2020/7/21 11:00:02
--  
其实我是想表达:
A>B 和 B>A是矛盾的,但在cross(a,b)就统一到一起了,就是金叉,
我想要的是:在时间序列上,先判断A<B,再判断B<A 如果成立,就一直发出信号即可;