Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共11 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:请教老师,如下思路如何实现

1楼
437382180311 发表于:2020/9/25 11:44:14
CD1: a  b,b200周期内第一次小于a,之后b小于a忽略不计。

CD2: 满足CD1后, c  d       d第三次上穿c.

见图片:
2楼
437382180311 发表于:2020/9/25 11:45:08
图片点击可在新窗口打开查看
3楼
FireScript 发表于:2020/9/25 13:18:55
 1.cd1不就相当于200周期内 只要存在至少一次b小于a?
2.cd2。 这个判断必须限定在一定周期内。否则无意义。因为你只要K线数据量到一定程度,那么d上传c 会发生很多次。
[此贴子已经被作者于2020/9/25 13:19:08编辑过]
4楼
437382180311 发表于:2020/9/25 13:27:46
CD1:=any(b<a,200);

CD2:=if( CD1,count( cross(d,c),barslast(a>b) )>=3  );

请老师修正,谢谢。
5楼
437382180311 发表于:2020/9/25 13:31:19
CD1:=any(b<a,200);

CD2:=if( CD1,count( cross(d,c),barslast(a>b) )>=3 ,drawnull );

请老师修正,谢谢。
6楼
FireScript 发表于:2020/9/25 13:52:39
CD2:=if( CD1,count( cross(d,c),barslast(a>b) )>=3 ,0);

这个部分得话,应该还是有点问题。不如用这个BARSSINCE2() 或者同样写死成200周期。否则b下穿a如果发生多次的情况下。这个返回值取的就是最近的一次了。
7楼
437382180311 发表于:2020/9/25 14:40:24
还是不行。请老师再指点一下。怎样才能写死成200周期
8楼
FireScript 发表于:2020/9/25 14:41:14
 CD2:=if( CD1,count( cross(d,c),200 )>=3 ,drawnull );
我的意思是这里直接写成200
9楼
437382180311 发表于:2020/9/25 14:48:39
 CD2:=if( CD1,count( cross(d,c),200 )>=3 ,drawnull );
我的意思是这里直接写成200

如果直接写成200,会把    不满足CD1的    cross (d,c)的次数也给计算进去。
[此贴子已经被作者于2020/9/25 14:49:57编辑过]
10楼
FireScript 发表于:2020/9/25 15:02:03
 LEN:BARSSINCE2(a>b,200)+1;//返回值是从0开始的,所以+1
CD2:=if( CD1,count( cross(d,c),LEN)>=3 ,0);

这样就是从200周期内第一次a>b位置开始统计了。就不存在说不满足a>b之前也统计进去的情况。
共11 条记录, 每页显示 10 条, 页签: [1] [2]


Powered By Dvbbs Version 8.3.0
Processed in .51563 s, 3 queries.