Rss & SiteMap

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

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

标题:跨周期程序的问题

1楼
lipeng6880 发表于:2018/8/7 9:57:05

老师您好:我写了个海龟交易的跨周期程序,只是做空部分,但是加载上去没有信号,您给看下哪里有问题:

先建一指标HGJY:

INPUT:N(20,1,200,1);
N周期高点:REF(HHV(H,N),1);
N周期低点:REF(LLV(L,N),1);


开多平空交叉:=CROSS(C,N周期高点);
开空平多交叉:=CROSS(N周期低点,C);
开多平空大于:=C>N周期高点;
开空平多小于:=C<N周期低点;

再写程序:

INPUT:N(20,1,200,1);
N周期高点:REF(HHV(H,N),1);
N周期低点:REF(LLV(L,N),1);
SS:=MAX(1,INTPART(30000/(C*10*0.16)));
手数:=SS;
开多平空交叉:=CROSS(C,N周期高点);
开空平多交叉:=CROSS(N周期低点,C);
开多平空大于:=C>N周期高点;
开空平多小于:=C<N周期低点;
开多平空交叉A:STKINDIEX('',"HGJY.开多平空交叉",0,21,112,1000);
开空平多交叉A:STKINDIEX('',"HGJY.开空平多交叉",0,21,112,1000);
开多平空大于A:STKINDIEX('',"HGJY.开多平空大于",0,21,112,1000);
开空平多小于A:STKINDIEX('',"HGJY.开空平多小于",0,21,112,1000);

if holding=0 and 开空平多小于 and 开空平多小于A then
begin

buyshort(holding=0 and 开空平多小于 and 开空平多小于A,手数);
end

if holding<0 and (开多平空交叉 or 开多平空交叉A) then
begin

sellshort(holding<0 and (开多平空交叉 or 开多平空交叉A),holding);
end

2楼
FireScript 发表于:2018/8/7 10:25:52
 1.代码有些小问题,
stkindex里面设置的数据量可能不够 STKINDIEX('',"HGJY.开多平空交叉",0,21,112,1000);   如果不好控制,就直接用stkind就可以了。
第二个参数:
"HGJY.开多平空交叉"  改成  'HGJY.开多平空交叉'  用单引号,测试的时候发现这2者是不一样的

2.被引用的变量的定义方式
用“:”定义 而不是 “:=” 去定义。

3.你的条件本身较难触发。我修改了引用的周期等才调试出了信号。
共2 条记录, 每页显示 10 条, 页签: [1]


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