Rss & SiteMap

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

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

标题:交易编写

1楼
曹晓东 发表于: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   这个条件只有在第一次满足的时候成交   其他的时候不成交  

2楼
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;

3楼
曹晓东 发表于:2016/12/29 17:33:33
为什么不准呢   好多没有开单呀
4楼
曹晓东 发表于: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、空单不开。

麻烦改一下。

5楼
jinzhe 发表于:2016/12/30 8:46:31

发个截图说明一下上面所讲的情况

6楼
曹晓东 发表于:2016/12/30 8:58:42

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20161230085827.png
图片点击可在新窗口打开查看
7楼
jinzhe 发表于:2016/12/30 9:15:29
每天的第一次?
8楼
曹晓东 发表于:2016/12/30 9:24:53
不是  是从0轴之下到0轴之上的第一次。
9楼
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,不是第一次上穿,

修改的地方加粗变色了

10楼
曹晓东 发表于:2016/12/30 9:59:38

ok

 

3q

共10 条记录, 每页显示 10 条, 页签: [1]


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