金字塔决策交易系统
标题: 咨询下:模拟盘 后台程序化交易 [打印本页]
作者: 103902 时间: 2024-5-6 15:29
标题: 咨询下:模拟盘 后台程序化交易
咨询下:模拟盘 后台程序化交易
5分钟周期,监控300股指期货,下面这样简单的编写可以实现自动下单吗?
MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
开多条件:=CROSS(MA5,MA10);
开多:BUY(开多条件 AND HOLDING=0,1,THISCLOSE);
作者: 资深技术05 时间: 2024-5-6 15:32
可以。但是你写的的图表的代码,只能运行图表模型上。而且图表模型通常必须有开,也有平仓。
否则你这个模型在历史位置出了信号后,后续就没有信号了。因为你判断了仓位,而开仓后不平仓,理论持仓会一直在的.
作者: 103902 时间: 2024-5-6 15:44
是不是这样可以?
MA5:MA(CLOSE,5);
MA10:MA(CLOSE,10);
开多条件:=CROSS(MA5,MA10);
开多:TBUY(开多条件 ,1,LMT,CLOSE);
作者: 资深技术05 时间: 2024-5-6 15:59
对,这样在后台是可以直接运行的.
作者: 103902 时间: 2024-5-6 16:01
好的,谢谢!
作者: 103902 时间: 2024-5-7 10:24
这样可以吗? 怎么不出信号,不知哪里设置有问题,(执行信号选2秒 或 走完一根k线设置都试过,不出信号)
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
J:=3*K-2*D;
开多条件:=CROSS(K,D) ;
开多:TBUY(开多条件 ,1,LMT,CLOSE);
作者: 资深技术05 时间: 2024-5-7 10:58
代码没什么问题。默认参数情况下。五分钟周期上,今天也就9点45那个K有一个信号. 其他位置本身没有信号的。
另外你最好也补充下历史五分钟数据,也可能是历史数据不足导致指标计算有问题。
作者: 103902 时间: 2024-5-7 11:04
我还以为是哪里设置有问题,刚才有了,谢谢,
作者: 103902 时间: 2024-5-9 11:13
请教下:这个信号出现后就执行一次应该怎么设置?就是后面再出现就不再下单,我这样开多好像有信号就下单。
作者: 103902 时间: 2024-5-9 13:23
是不是要把:“预警后保持监控” 这个选项去掉就可以了?
作者: 资深技术05 时间: 2024-5-9 13:59
你如果是五分钟周期,最多一个K上触发一次,下单语句本身 有默认限制:单个K周期内只触发一次的。
你如果希望后续不重复触发,你可以加一个仓位判断的。仓位为0才开仓.
多空分别用这2个函数去判断仓位:
TBUYHOLDINGEX()
TSELLHOLDINGEX()
作者: 103902 时间: 2024-5-9 14:24
这样的话是账户有持仓就不触发,没有持仓才触发下单,我是想不管有没有持仓,只要触发条件就执行一次下单,再触发就不执行下单,这样可以设置吗?
作者: 资深技术05 时间: 2024-5-9 14:39
可以。不过这个设置 :预警后不再监控的选项。我试了下 好像无法奏效.
你只能用全局变量记录来限制了.
s1:=stklabel&'_record';
record:=extgbdata(s1);
if 开多条件 and record=0 then
begin
tbuy(1,1,lmt,close);
extgbdataset(s1,1);//开仓后设置为1
end
但是这样,你后续要再次开仓,就只能手工去重置掉全局变量,或者设置一个条件来解除限制了.
另外这个限制仅对当前这个指标的 这个下单语句奏效.
作者: 103902 时间: 2024-5-9 14:51
好的,谢谢,我试试
作者: 103902 时间: 2024-5-12 14:46
咨询下:这个开多条件如果是两个周期的话该怎么设置?系统好像没有周期组合条件选项,比如5分钟和60分钟同时金叉开多,
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
J:=3*K-2*D;
开多条件:=CROSS(K,D) ;
开多:TBUY(开多条件 ,1,LMT,CLOSE);
作者: 资深技术05 时间: 2024-5-13 08:52
那要跨周期进行调用了。 把开仓条件放到一个新 的指标里。
然后分别指定周期去调用就行了.
可以参考这里完整的使用说明:
https://www.weistock.com/docs/PE ... 91%A8%E6%9C%9F.html
作者: 103902 时间: 2024-5-13 12:56
是不是这样就可以?
指标名:kdj开多
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
J:=3*K-2*D;
开多条件:=CROSS(K,D) ;
5K:="kdj开多.开多条件#min5";
60K:="kdj开多.开多条件#min60";
开多:TBUY(5k and 60k ,1,LMT,CLOSE);
作者: 资深技术05 时间: 2024-5-13 13:13
对,是这么个写法.
作者: 103902 时间: 2024-5-13 13:21
好的,谢谢
作者: 103902 时间: 2024-5-13 14:03
这个预警的时候周期怎么选?5分钟?60分钟?日线? 刚才试了一下,好像条件成立却没有出信号,没有自动下单
作者: 资深技术05 时间: 2024-5-13 14:25
(, 下载次数: 1269)