设为首页收藏本站

 找回密码
 注册
查看: 2176|回复: 2
打印 上一主题 下一主题

TB网校的海龟课程程序为什么测试不了 [复制链接]

Rank: 1

精华
0
UID
236974
积分
4
帖子
3
主题
1
阅读权限
10
注册时间
2016-6-22
最后登录
2021-11-28
跳转到指定楼层
1#
发表于 2018-3-22 16:57:35 |只看该作者 |倒序浏览
本帖最后由 lorcan2010 于 2018-3-22 17:00 编辑

TB网校的海龟课程程序为什么测试不了,我自己把程序敲出来,在TB上面跑,解析保存没问题,但是测试没有反应,没有交易,请大家帮帮看看怎么改一下,程序如下:

params
  numeric bolength(20);
  numeric telength(10);
  numeric atrlength(20);
  numeric riskratio(1);

vars
  numericseries donchianhi;
  numericseries donchianlo;
  numeric minpoint;
  numeric myentryprice;
  numeric myexitprice;
  numeric exithighestprice;
  numeric exitlowestprice;
  numericseries avgtr;
  numeric n;
  numeric un;
  numeric totalequity;
  numeric turtleunits;

begin
  donchianhi=HighestFC(high[1],bolength);
  donchianlo=lowestfc(low[1],bolength);
  plotnumeric("donchianhi",donchianhi);
  plotnumeric("donchianlo",donchianlo);
  minpoint=minmove*pricescale;
  exitlowestprice=lowestfc(low[1],telength);
  exithighestprice=highestfc(high[1],telength);

  avgtr=xaverage(truerange,atrlength);
  n=avgtr[1];
  un=n*contractunit()*bigpointvalue();
  totalequity=portfolio_currentcapital()*portfolio_usedmargin();
  turtleunits=((totalequity*riskratio/100)/un);
  turtleunits=Intpart(turtleunits);
  
  
  if(marketposition==0)
  {
     if(high>donchianhi&&turtleunits>=1)
     {
          myentryprice=min(high,donchianhi+minpoint);
          myentryprice=iif(myentryprice<open,open,myentryprice);
          buy(turtleunits,myentryprice);
       }
  
     if(low<donchianlo&&turtleunits>=1)
     {
           myentryprice=max(low,donchianlo-minpoint);
           myentryprice=iif(myentryprice>open,open,myentryprice);
           sellshort(turtleunits,myentryprice);
        }
    }

  if(marketposition==1)
  {
     commentary("exitlowestprice="+text(exitlowestprice));
      if(low<exitlowestprice)
     {
          myexitprice=max(low,exitlowestprice-minpoint);
          myexitprice=iif(myexitprice<open,open,myexitprice);
          sell(0,myexitprice);
       }
  
     }else{
       if(marketposition==-1)
  {
     commentary("exithighestprice="+text(exithighestprice));
      if(high>exithighestprice)
     {
          myexitprice=min(high,exithighestprice+minpoint);
          myexitprice=iif(myexitprice<open,open,myexitprice);
          buytocover(0,myexitprice);
       }
     }
    }
end

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
2#
发表于 2018-3-23 08:53:44 |只看该作者
TotalEquity 的计算应该是 Portfolio_CurrentCapital+ Portfolio_UsedMargin
上述使用相乘的,在最初始的usedmargin肯定是为0的,那么相乘结果为0,最后的下单 手数计算出来也是0.自然没有信号了。

使用道具 举报

Rank: 1

精华
0
UID
236974
积分
4
帖子
3
主题
1
阅读权限
10
注册时间
2016-6-22
最后登录
2021-11-28
3#
发表于 2018-3-23 15:49:05 |只看该作者
谢谢老大

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

bottom

静态版|手机版|联系我们|交易开拓者 ( 粤ICP备07044698   

GMT+8, 2024-4-26 10:55

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部