以文本方式查看主题
- 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp)
-- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4)
---- 交易编写 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=145516)
|
-- 作者:曹晓东
-- 发布时间:2016/12/29 17:28:32
-- 交易编写
a1:=(REF(O,1) + REF(C,1)) / 2; a2:=(H + L + C) / 3; a3:=MAX(MAX(a1,a2),H); a4:=MIN(MIN(a1,a2),L); a5:=IF(a1 < a2,a3 - a4 + a2 - a1,a3 - a4); a6:=IF(a1 > a2,a3 - a4 + a1 - a2,a3 - a4); a7:=a5 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a8:=a6 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a9:=(a7 - a8) * 2.5; tj1:=a9>0; pc:=a9<0;
做多力度:=SMA((CLOSE - LLV(LOW,9)) / (HHV(HIGH,9) - LLV(LOW,9)) * 100,5,1) - 8; 做空力度:=SMA((HHV(HIGH,36) - CLOSE) / (HHV(HIGH,36) - LLV(LOW,36)) * 100,2,1); 多空差:=做多力度-做空力度; tj2:=多空差>0;
aa1:=(C - LLV(L,7)) / (HHV(H,7) - LLV(L,7)) * 100;
aa2:=(C - LLV(L,38)) / (HHV(H,38) - LLV(L,38)) * 100; 小:=SMA(aa2,5,2); 大:=SMA(小,10,1);
tj3:=小>大;
if tj1 and tj2 and tj3 and holding=0 then begin buy(holding=0,1,marketr); end if pc then begin sell(1,0,marketr); end
帮忙修改一下 tj2 这个条件只有在第一次满足的时候成交 其他的时候不成交
|
-- 作者:jinzhe
-- 发布时间:2016/12/29 17:30:16
--
variable:n=0;
a1:=(REF(O,1) + REF(C,1)) / 2; a2:=(H + L + C) / 3; a3:=MAX(MAX(a1,a2),H); a4:=MIN(MIN(a1,a2),L); a5:=IF(a1 < a2,a3 - a4 + a2 - a1,a3 - a4); a6:=IF(a1 > a2,a3 - a4 + a1 - a2,a3 - a4); a7:=a5 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a8:=a6 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a9:=(a7 - a8) * 2.5; tj1:=a9>0; pc:=a9<0;
做多力度:=SMA((CLOSE - LLV(LOW,9)) / (HHV(HIGH,9) - LLV(LOW,9)) * 100,5,1) - 8; 做空力度:=SMA((HHV(HIGH,36) - CLOSE) / (HHV(HIGH,36) - LLV(LOW,36)) * 100,2,1); 多空差:=做多力度-做空力度; tj2:=多空差>0;
aa1:=(C - LLV(L,7)) / (HHV(H,7) - LLV(L,7)) * 100;
aa2:=(C - LLV(L,38)) / (HHV(H,38) - LLV(L,38)) * 100; 小:=SMA(aa2,5,2); 大:=SMA(小,10,1);
tj3:=小>大;
if tj2 then n:=n+1;
if tj1 and cross(n=1,0.5) and tj3 and holding=0 then begin buy(holding=0,1,marketr); end if pc then begin sell(1,0,marketr); end
if time=closetime(0) then n:=0;
|
-- 作者:曹晓东
-- 发布时间:2016/12/29 17:33:33
--
为什么不准呢 好多没有开单呀
|
-- 作者:曹晓东
-- 发布时间:2016/12/29 21:55:44
--
variable:n=0,m=0;
a1:=(REF(O,1) + REF(C,1)) / 2; a2:=(H + L + C) / 3; a3:=MAX(MAX(a1,a2),H); a4:=MIN(MIN(a1,a2),L); a5:=IF(a1 < a2,a3 - a4 + a2 - a1,a3 - a4); a6:=IF(a1 > a2,a3 - a4 + a1 - a2,a3 - a4); a7:=a5 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a8:=a6 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a9:=(a7 - a8) * 2.5; tj1:=a9>=0; pc:=a9<0; pc1:=a9>0; tj11:=a9<0;
做多力度:=SMA((CLOSE - LLV(LOW,9)) / (HHV(HIGH,9) - LLV(LOW,9)) * 100,5,1) - 8; 做空力度:=SMA((HHV(HIGH,36) - CLOSE) / (HHV(HIGH,36) - LLV(LOW,36)) * 100,2,1); 多空差:=做多力度-做空力度; tj2:=多空差>=0; tj22:=多空差<0;
aa1:=(C - LLV(L,7)) / (HHV(H,7) - LLV(L,7)) * 100;
aa2:=(C - LLV(L,38)) / (HHV(H,38) - LLV(L,38)) * 100; 小:=SMA(aa2,5,2); 大:=SMA(小,10,1);
tj3:=小>大; tj33:=小<=大;
if tj2 then n:=n+1; if tj22 then m:=m+1;
if tj1 and cross(n=1,0.5) and tj3 and holding=0 then begin buy(holding=0,1,marketr); end if pc then begin sell(holding>0,1,marketr); end
if time=closetime(0) then n:=0;
if tj11 and cross(m=-1,0.5) and tj33 and holding=0 then begin buyshort(holding=0,1,thisclose); end if pc1 then begin sellshort(holding<0,1,thisclose); end if time=closetime(0) then m:=0;
这段代码有两个问题;
1、信号不全,个别符合情况会出现开单信号,多数不开。
2、空单不开。
麻烦改一下。
|
-- 作者:jinzhe
-- 发布时间:2016/12/30 8:46:31
--
发个截图说明一下上面所讲的情况
|
-- 作者:曹晓东
-- 发布时间:2016/12/30 8:58:42
--
此主题相关图片如下:qq图片20161230085827.png
![dvubb 图片点击可在新窗口打开查看](UploadFile/2016-12/201612308584165679.png)
|
-- 作者:jinzhe
-- 发布时间:2016/12/30 9:15:29
--
每天的第一次?
|
-- 作者:曹晓东
-- 发布时间:2016/12/30 9:24:53
--
不是 是从0轴之下到0轴之上的第一次。
|
-- 作者:jinzhe
-- 发布时间:2016/12/30 9:37:32
--
a1:=(REF(O,1) + REF(C,1)) / 2; a2:=(H + L + C) / 3; a3:=MAX(MAX(a1,a2),H); a4:=MIN(MIN(a1,a2),L); a5:=IF(a1 < a2,a3 - a4 + a2 - a1,a3 - a4); a6:=IF(a1 > a2,a3 - a4 + a1 - a2,a3 - a4); a7:=a5 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a8:=a6 / (a5 + a6) * AMOUNT * MAX(ABS(a1 - a2) / (a3 - a4),0.15) / 10000; a9:=(a7 - a8) * 2.5; tj1:=a9>0; pc:=a9<0;
做多力度:=SMA((CLOSE - LLV(LOW,9)) / (HHV(HIGH,9) - LLV(LOW,9)) * 100,5,1) - 8; 做空力度:=SMA((HHV(HIGH,36) - CLOSE) / (HHV(HIGH,36) - LLV(LOW,36)) * 100,2,1); 多空差:=做多力度-做空力度; tj2:=cross(多空差,0);
aa1:=(C - LLV(L,7)) / (HHV(H,7) - LLV(L,7)) * 100;
aa2:=(C - LLV(L,38)) / (HHV(H,38) - LLV(L,38)) * 100; 小:=SMA(aa2,5,2); 大:=SMA(小,10,1);
tj3:=小>大;
if tj1 and tj2 and tj3 and holding=0 then begin buy(holding=0,1,marketr); end if pc then begin sell(1,0,marketr); end
那你应该讲第一次大于0,不是第一次上穿,
修改的地方加粗变色了
|
-- 作者:曹晓东
-- 发布时间:2016/12/30 9:59:38
--
ok
3q
|