设为首页收藏本站

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

请教版主,以下收盘平仓代码运行时,程序崩溃 [复制链接]

Rank: 5Rank: 5

精华
0
UID
6222
积分
1304
帖子
285
主题
81
阅读权限
60
注册时间
2009-12-20
最后登录
2019-6-16
跳转到指定楼层
1#
发表于 2010-9-28 15:05:12 |只看该作者 |倒序浏览
请教版主,为什么以下收盘平仓代码运行时,程序崩溃,提示runtime问题



If(Time>=0.1457 && Time<0.1500)
             {
                     
             If(A_TodayBuyPosition !=0 && GetGlobalVar(0)!=1) // 有多仓的情况
                  {                     
                 A_SendOrder(Enum_Sell,Enum_ExitToday,GetGlobalVar(1),Q_BidPrice-MinPoint);
                                 SetGlobalVar(0,1);
                 FileAppend("G:\\tradelog.txt","Auto,"+A_AccountID+","+Symbol+",收盘平多仓:"+"时间"+DateTimeToString (SystemDateTime)+",数量"+Text(GetGlobalVar(1))+",委托价"+Text(Q_BidPrice-MinPoint));                                                 
                 Return;                                 
                  }
                        If(A_TodaySellPosition != 0 && GetGlobalVar(0)!=1)// 有空仓的情况
                          {
                     A_SendOrder(Enum_Buy,Enum_ExitToday,GetGlobalVar(2),Q_AskPrice+MinPoint);
                 SetGlobalVar(0,1);
                 FileAppend("G:\\tradelog.txt","Auto,"+A_AccountID+","+Symbol+",收盘平空仓:"+"时间"+DateTimeToString (SystemDateTime)+",数量"+Text(GetGlobalVar(2))+",委托价"+Text(Q_AskPrice+MinPoint));
                                 Return;
              }
                   Return;
             }

Rank: 5Rank: 5

精华
0
UID
6222
积分
1304
帖子
285
主题
81
阅读权限
60
注册时间
2009-12-20
最后登录
2019-6-16
2#
发表于 2010-9-28 15:07:59 |只看该作者
程序中GetGlobalVar(1)是A_TodayBuyPosition ,GetGlobalVar(2)是A_TodaySellPosition

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5525
积分
1473
帖子
429
主题
93
阅读权限
60
注册时间
2009-9-22
最后登录
2022-5-23
3#
发表于 2010-9-28 22:03:26 |只看该作者
运行时间错,可能时程序死循环,或使用FileAppend语句太多,或程序语句太多,或使用了C++的关键字有关。
你的程序片断语法上没有问题,估计是你的程序使用FileAppend语句过多引起系统编译错误。
可以注释条几条FileAppend语句试试。

另外,你用一个公共变量来控制是否已发单,当账户存在锁仓时,就不能平两边的仓位。
上善若水,无欲则刚

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
5525
积分
1473
帖子
429
主题
93
阅读权限
60
注册时间
2009-9-22
最后登录
2022-5-23
4#
发表于 2010-9-28 22:06:39 |只看该作者
如果行情变化很快,发生了滑价,你就没有了继续平仓的机会。这个平仓处理不太好。
上善若水,无欲则刚

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
6222
积分
1304
帖子
285
主题
81
阅读权限
60
注册时间
2009-12-20
最后登录
2019-6-16
5#
发表于 2010-9-28 22:39:13 |只看该作者
谢谢指教!我的程序实际上是一个日内操作自动跟踪程序,只有不到一百行代码,fileappend语句有八条,我只单向开仓,从不锁仓,使用交易助手处理未成交单.我明天试试您的建议,注释几条调试语句看看

使用道具 举报

Rank: 5Rank: 5

精华
0
UID
6222
积分
1304
帖子
285
主题
81
阅读权限
60
注册时间
2009-12-20
最后登录
2019-6-16
6#
发表于 2010-9-29 10:34:45 |只看该作者
果然是FileAppend的问题,但10几条语句不算太多吧?谢谢您

使用道具 举报

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

bottom

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

GMT+8, 2024-5-3 20:01

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部