Rss & SiteMap

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

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

标题:上次条件成立的位置

1楼
marks 发表于:2020/7/30 9:43:17
BARSLAST(TYPE(1)=2),请问上次平多的位置到当前的周期是这么描述吧,在图表上显示的是当平多后一直显示为零,当开仓后才开始显示周期数。
如果写成BARSLAST(TTYPE(1)=1),从平多后开始显示周期数,这个TYPE=的描述和实际显示为什么不符。
2楼
FireScript 发表于:2020/7/30 9:47:11
你直接 BARSLAST(平仓条件)

你用BARSLAST(TYPE(1)=2), 这种方式肯定有问题的。
TYPE(1)判断的是上次信号,只要你没重新出交易信号,这个函数返回值在平多之后一直都是一样的。也就是每个K都是满足TYPE(1)=2,返回值当然是0 了。

3楼
marks 发表于:2020/7/30 10:16:27
如果用BARSLAST(平仓条件)的话,如果平仓条件触发后没有成交,撤单了,那这个条件就不能成立了。
想要的是真正平仓后开始计算平仓后的周期
4楼
FireScript 发表于:2020/7/30 10:19:59
 那没办法。就算撤单了,你在图表上也无法知晓。你用type也是一样的,它也是根据图表上信号来的。图表只管出信号,你执行的情况和它无关的。
5楼
marks 发表于:2020/7/30 10:35:22
那是不是直接用EXITBARS也一样,我看图表显示是一样的。
还有一个问题,在图表上显示正常,但是改成后台就不开仓。
这是图表的开仓条件,显示正常:
YD:=REF(EXIST(L=LLV(L,10),EXITBARS),1);
YJD:=REF(L<=EXITPRICE-100*MINDIFF,BARSLAST(YD)+1);
开仓条件:=H>REF(H,1) AND YJD;

后台的,不开仓:
YD:=REF(EXIST(L=LLV(L,10),TEXITBARS),1);
YJD:=REF(L<=TEXITPRICE-100*MINDIFF,BARSLAST(YD)+1);
开仓条件:=H>REF(H,1) AND YJD;
6楼
FireScript 发表于:2020/7/30 10:50:48
 图表和后台不是简单一个显示 一个不显示的差别。后台上是直接没有历史回测的信号的,不像图表会受到历史信号影响。所以你要是看单纯的指标计算,还有一定对比性,比如ma这种,但是涉及到需要历史信号的这种是肯定不能对比的。

你这里TEXITBARS  这个 必须是后台之前有过下单记录,它才有返回值,否则是不行的。所以你写后台代码的时候,必须考虑到之前没有进行过交易的初始情况。
7楼
marks 发表于:2020/7/30 10:53:23
我后台实际测试过程中,平仓后满足开仓条件也没有开仓,开仓条件就是上面的那个条件
8楼
FireScript 发表于:2020/7/30 10:57:20
 后台里面你只能DEBUGFILE判断条件是否满足。其他方式都是不可靠有误判可能性的。
相关的变量你把它输出出来看下 才能判断问题所在。
9楼
marks 发表于:2020/7/30 11:33:25
输出了,也成立,我再试试看看吧。
共9 条记录, 每页显示 10 条, 页签: [1]


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