一键平仓脚本为什么平仓只能平一半?  

735 22
| 发表于 2022-6-13 22:57:54 | 只看该作者 |复制链接
这是个一键平仓脚本,执行中发现了一个问题,每次平仓只能平一半,今天研究了一下发现问题,出在if循环上。
看下面的代码。如果现在有4笔订单要平仓,那么在下面的代码是这样的执行的。
1、OrdersTotal()>0),判断订单4笔大于0
2、遍历4笔订单
    问题就出在这里。当平掉两笔订单后i等于2,这时OrdersTotal()=2,关键是OrdersTotal(),这也是变化的数字,不再是当时的4.当i=OrdersTotal()时,程序自然就执行不下去了。这时只需要把if换成while就能解决问题。
if 只做判断,判断一次之后,便不会再回来了
while 的话,循环,直到结果为false,才跳出来

//--------------------------------------------------------------------------------------------------  
           
  1. if(OrdersTotal()>0)
  2.                {
  3.                   for(int i=0;i<OrdersTotal();i++)
  4.                      {
  5.                        if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==1)
  6.                           {  
  7.                              if(OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),100,clrNONE)==1)
  8.                                 print("平仓成功");
  9.                                  
  10.                           }
  11.             
  12.                       }
  13.                 }     
复制代码
如果有帮助,就支持一下我呗
举报

收藏 1 点赞 0 评论 使用道具

热门主题

精彩评论22

跳转到指定楼层
pengjhl
CC
2#
| 发表于 2022-6-14 00:39:22 | 只看该作者
谢谢分享
举报

点赞 评论 使用道具

nanaliu
CC
3#
| 发表于 2022-6-14 00:54:41 | 只看该作者
路过。。看看先。。。。
举报

点赞 评论 使用道具

banruo
DDD
4#
| 发表于 2022-6-14 06:33:15 | 只看该作者
看看先。。。。
举报

点赞 评论 使用道具

彩虹桥
DDD
5#
| 发表于 2022-6-14 10:33:46 | 只看该作者
确实牛逼
举报

点赞 评论 使用道具

ea12213
C
6#
| 发表于 2022-6-14 11:11:30 | 只看该作者
谢谢分享
举报

点赞 评论 使用道具

6669
DDD
7#
| 发表于 2022-6-14 11:45:49 | 只看该作者
谢谢分享
举报

点赞 评论 使用道具

紫竹青荷
CC
8#
| 发表于 2022-6-14 11:51:47 | 只看该作者
路过了解一下
举报

点赞 评论 使用道具

qwe11
CC
9#
| 发表于 2022-6-14 12:34:34 | 只看该作者
路过了解一下,好
举报

点赞 评论 使用道具

amwwfndn
DD
10#
| 发表于 2022-6-14 14:36:41 | 只看该作者
谢谢分享
举报

点赞 评论 使用道具

jongjongyoshen
D
11#
| 发表于 2022-6-14 14:37:40 | 只看该作者
路过。。看看先。。。
举报

点赞 评论 使用道具

bin
DD
12#
| 发表于 2022-6-17 08:02:09 | 只看该作者
谢谢分享
举报

点赞 评论 使用道具

南岭彭于晏
未及格
13#
| 发表于 2022-6-20 09:39:58 | 只看该作者
路过看看
举报

点赞 评论 使用道具

jrjr168
D
14#
| 发表于 2022-6-28 00:12:55 | 只看该作者
不错,感谢分享
举报

点赞 评论 使用道具

skykey3
DDD
15#
| 发表于 2022-6-28 14:33:44 | 只看该作者
能盈利就是好东西
举报

点赞 评论 使用道具

owen09099
未及格
16#
| 发表于 2022-6-28 22:21:56 | 只看该作者
这个while的用法的确比if好
举报

点赞 评论 使用道具

jongjongyoshen
D
17#
| 发表于 2022-6-28 22:53:29 | 只看该作者
看看。。了解下。。。
举报

点赞 评论 使用道具

mic
DD
18#
| 发表于 2022-6-28 22:54:21 | 只看该作者
谢谢分享
举报

点赞 评论 使用道具

wangddtt
CC
19#
| 发表于 2022-6-29 15:43:09 | 只看该作者
就是往前平仓和往后平仓的问题,我也碰过这个坑
举报

点赞 评论 使用道具

huxu8777
DD
20#
| 发表于 2022-6-29 23:25:24 | 只看该作者
这个while的用法的确比if好
举报

点赞 评论 使用道具

12下一页
发新帖
EA交易
您需要登录后才可以评论 登录 | 立即注册