设为首页收藏本站

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

减仓到底如何写,头都大了。 [复制链接]

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
1#
发表于 2018-10-15 11:21:35 |显示全部楼层
本帖最后由 小米 于 2018-10-15 11:22 编辑

lots这样使用不太对的吧。。
  1. params
  2.       numeric lots(3);
  3. begin
  4.       if(marketposition==0)
  5.       {
  6.             if(condition1)
  7.                      buy(lots,open);
  8.             else if( condition2)
  9.                      sellshort(lots,open);
  10.       }
  11.       if(marketposition==1)
  12.       {
  13.              if(condition2)
  14.                    sell(1,open);
  15.              if(condition4)
  16.                    sell(lots-1,open);
  17.      }
  18.      if(marketposition==-1)
  19.      {
  20.            if(condtion1)
  21.                   buytocover(1,open);
  22.            if(condition3)
  23.                   buytocover(lots-1,open);
  24.       }
  25. end
复制代码

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
2#
发表于 2018-10-18 09:18:16 |显示全部楼层
本帖最后由 小米 于 2018-10-18 09:29 编辑
ad434005 发表于 2018-10-17 22:51
你的代码和思路没有问题,我也觉得。可是为什么我照着写出来,根本就没法执行呢。不是一个信号都没有,就 ...


不要光看逻辑,代码条件上有进行排查了吗?条件是否唯一且稳定呢?
我我随便找了一个条件代入试了一下,结果貌似没有什么问题啊。。
  1. params
  2.         numeric lots(3);
  3.         Numeric FastLength(5);
  4.         Numeric SlowLength(20);
  5. Vars
  6.         NumericSeries AvgValue1;
  7.         NumericSeries AvgValue2;
  8.         Bool con1;
  9.         bool con2;
  10. Begin
  11.         AvgValue1 = AverageFC(Close,FastLength);
  12.         AvgValue2 = AverageFC(Close,SlowLength);
  13.         con1 = AvgValue1[1] > AvgValue2[1];
  14.         con2 = AvgValue1[1] < AvgValue2[1];

  15.       if(marketposition==0)
  16.       {
  17.             if(con1)
  18.                      buy(lots,open);
  19.             else if( con2)
  20.                      sellshort(lots,open);
  21.       }
  22.       if(marketposition==1)
  23.       {
  24.              if(BarsSinceEntry==4)
  25.                                  sell(1,open);
  26.              if(BarsSinceEntry>=10)
  27.                    sell(lots-1,open);
  28.      }
  29.      if(marketposition==-1)
  30.      {
  31.            if(BarsSinceEntry==4)
  32.                   buytocover(1,open);
  33.            if(BarsSinceEntry>=10)
  34.                   buytocover(lots-1,open);
  35.       }
  36. end
复制代码
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

使用道具 举报

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

bottom

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

GMT+8, 2024-5-24 08:04

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部