以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  实际交易中,海龟无法在同一根k线内实现连续开仓  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=11477)

--  作者:tonybig
--  发布时间:2012/5/4 8:33:59
--  实际交易中,海龟无法在同一根k线内实现连续开仓

实际交易中,海龟无法在同一根k线内实现连续开仓,请问这个需要改动什么才能进行。

谢谢

 

 

input:inb(20,1,500,1),outb(10,1,500,1),risk(2,0,10,0.1);
//和风版海龟源码
variable:times=0,i=0,n=0;
rn:=ema(ref(tr,1),20);
n:=valuewhen(holding=0,rn);
rh:=ref(h,1);
rl:=ref(l,1);
h1:hhv(rh,inb);
h2:hhv(rh,outb),linedot;
l1:llv(rl,inb);
l2:llv(rl,outb),linedot;
lotst:asset*risk*0.01/(n*2*multiplier),linethick0;
lots:=if(risk=0,1,lotst); //如果risk取0,表示固定开1手
tbc:=h<>l;//判断是否停板
partline(holding>0,enterprice-2*n);
if barpos<inb+1 then exit;
if holding=0 and tbc then //不是停板才可以交易
begin
if h>h1 then //开多
begin
buyp:=max(o,h1);
buy(1,lots,limitr,buyp);
times:=1;
while h>enterprice+n*0.5 and times<4 do
begin
buyp:=max(o,enterprice+n*0.5);
buy(1,lots,limitr,buyp);
times:=times+1;
end;//连续开仓
end;//开多结束
else if l<l1 then //开空
begin
sellp:=min(o,l1);
buyshort(1,lots,limitr,sellp);
times:=1;
while l<enterprice-n*0.5 and times<4 do
begin
sellp:=min(o,enterprice-n*0.5);
buyshort(1,lots,limitr,sellp);
times:=times+1;
end;//连续开仓
end;
end;//holding=0

if holding>0 and tbc then //已有多仓
begin
exitlongp:=max(enterprice-2*n,l2);
if l<exitlongp and enterbars<>0 then //出场
begin
exitp:=min(o,exitlongp);
sell(1,0,limitr,exitp);
times:=0;
end;//出场
else
begin
while h>enterprice+n*0.5 and times<4 do //开多
begin
buyp:=max(o,enterprice+n*0.5);
buy(1,lots,limitr,buyp);
times:=times+1;
end;//连续开仓
end;//else


end;//holding>0

if holding<0 and tbc then //已有空仓
begin
exitlongp:=min(enterprice+2*n,h2);
if h>exitlongp and enterbars<>0 then //出场
begin
exitp:=max(o,exitlongp);
sellshort(1,0,limitr,exitp);
times:=0;
end;//出场
else
begin
while l<enterprice-n*0.5 and times<4 do //开多
begin
sellp:=min(o,enterprice-n*0.5);
buyshort(1,lots,limitr,sellp);
times:=times+1;
end;//连续开仓
end;//else
end;//holding<0


--  作者:jinzhe
--  发布时间:2012/5/4 8:41:23
--  

图表交易本来就是在一根k线只能做一次开空开多的。

要同根k线多次开仓,需要后台。


--  作者:tonybig
--  发布时间:2012/5/4 8:42:41
--  
可否全局变量  来解决?
--  作者:tonybig
--  发布时间:2012/5/4 11:32:33
--  
有人回答一下?
--  作者:王锋
--  发布时间:2012/5/4 12:06:06
--  
全局变量是解决不了问题的,只能用后台实现
--  作者:tonybig
--  发布时间:2012/5/4 12:31:50
--  
请斑竹把这个策略改为  后台版本,以供 大家学习一下。   谢谢
--  作者:tonybig
--  发布时间:2012/5/4 18:38:58
--  

这么多斑竹为啥没人帮忙呢