开拓者期货期权程序化系统交易论坛

标题: 使用Enum_Exit 平昨仓位不足 [打印本页]

作者: helloworld22    时间: 2016-10-27 22:57:28     标题: 使用Enum_Exit 平昨仓位不足

用的是A_SendOrder(Enum_Buy,Enum_Exit,tempPos,MyEntryPrice);
不是说用Enum_Exit会自动识别今仓昨仓吗?
怎么会这样呢?
合约是rb1701,好烦啊。


作者: helloworld22    时间: 2016-10-27 23:34:19

代码是这样的
  1. //检查是否有空单 ,有则先平仓
  2.                 tempPos = A_SellPosition();               
  3.                 MinPoint = offSet*MinMove*PriceScale;
  4.                 If(tempPos > 0) // 平空单
  5.                 {
  6.                         MyEntryPrice = Q_AskPrice+MinPoint;
  7.                         A_SendOrder(Enum_Buy,Enum_Exit,tempPos,MyEntryPrice);
  8.                         FileAppend("c:\\a1_log.txt","时间 = " + DateTimeToString(Date + time) +"\t 平空 价格 = "+Text(MyEntryPrice));
  9.                 }
  10.                
复制代码

作者: helloworld22    时间: 2016-10-28 09:30:18

管理员能解答一下吗?
作者: superwin    时间: 2016-10-28 09:47:52

是自动识别的啊,我实盘一直都是这样用的,V4、V5都是自动识别的,实盘好几年了。
作者: superwin    时间: 2016-10-28 09:57:37

TB早就在软件后台自动处理平今平昨问题了,参考2009年和2010年管理员的回答

http://bbs.tb18.net/forum.php?mo ... amp;page=1#pid36846

http://bbs.tb18.net/forum.php?mo ... amp;page=1#pid53743
作者: helloworld22    时间: 2016-10-28 10:05:59

superwin 发表于 2016-10-28 09:57
TB早就在软件后台自动处理平今平昨问题了,参考2009年和2010年管理员的回答

http://bbs.tb18.net/forum.ph ...

我也是看到管理员的回答以为是这样,但真不是,就是会出错。
刚进群问了,上期所的东西分平今和平昨。
改一下程序吧
作者: 小米    时间: 2016-10-28 10:09:14

用了哪个软件版本?

作者: helloworld22    时间: 2016-10-28 10:09:42

小米 发表于 2016-10-28 10:09
用了哪个软件版本?

tbplus 最新版
作者: 小米    时间: 2016-10-28 10:11:07

helloworld22 发表于 2016-10-28 10:09
tbplus 最新版

请加群425047026 ,或是拨打电话 025-52803089 ,将问题反馈给工作人员。
工作人员将会为您解
作者: helloworld22    时间: 2016-10-28 10:12:02

本帖最后由 helloworld22 于 2016-11-1 12:43 编辑

我把平仓代码改这成样了。不知道还会不会出错。
  1. tempPos = A_SellPosition();               
  2. MinPoint = offSet*MinMove*PriceScale;
  3. If(tempPos > 0) // 平空单
  4. {
  5.         MyEntryPrice = Q_AskPrice+MinPoint;
  6.         IF(A_TodaySellPosition==0)
  7.                 A_SendOrder(Enum_Buy,Enum_Exit,tempPos,MyEntryPrice);
  8.         Else
  9.                 A_SendOrder(Enum_Buy,Enum_ExitToday,tempPos,MyEntryPrice);
  10.         FileAppend(logName,"时间 = " + DateTimeToString(SystemDateTime()) +"\t  平空 价格 = "+Text(MyEntryPrice));               
  11. }
复制代码
------------此代码实盘已证实可用,不会再出错误了 2016.11.1
作者: helloworld22    时间: 2016-10-28 10:15:58

小米 发表于 2016-10-28 10:11
请加群425047026 ,或是拨打电话 025-52803089 ,将问题反馈给工作人员。
工作人员将会为您解 ...

已加了,得到的解答就是要区分平今和平昨。
作者: 小米    时间: 2016-10-28 10:18:57

本帖最后由 小米 于 2016-10-28 10:22 编辑
helloworld22 发表于 2016-10-28 10:15
已加了,得到的解答就是要区分平今和平昨。


哦。。请按极速版的语法规则来编写代码吧。
只是旗舰版里底层有处理,无需代码里区分。。论坛里的贴子也是以前按旗舰版的规则来写的。
上述代码,可以使用极速版的模拟帐户先测试几天,确认可控制后再决定实盘吧。
作者: superwin    时间: 2016-10-28 10:28:01

helloworld22 发表于 2016-10-28 10:09
tbplus 最新版

极速版是南京公司开发的,不是原来旗舰版的深圳公司的团队,应该是极速版没有考虑到设计后台处理,不够人性化,我可以确定地跟你说,旗舰版肯定会后台处理的,因为我有专门做上期所商品的实盘账户,而且实盘几年了,完全不需要在公式里区分的,只需要用Enum_Exit即可。
作者: superwin    时间: 2016-10-28 10:32:29

小米 发表于 2016-10-28 10:18
哦。。请按极速版的语法规则来编写代码吧。
只是旗舰版里底层有处理,无需代码里区分。。论坛里的贴子也 ...

建议极速版也能在底层处理比较好,我迟迟不敢使用极速版,也是因为极速版太多细节考虑欠缺,太不人性化,可否给南京方面一个建议,多从用户使用的角度出发。
作者: 小米    时间: 2016-10-28 11:21:36

superwin 发表于 2016-10-28 10:32
建议极速版也能在底层处理比较好,我迟迟不敢使用极速版,也是因为极速版太多细节考虑欠缺,太不人性化, ...

呃。。。好的。
作者: helloworld22    时间: 2016-10-28 15:32:59

superwin 发表于 2016-10-28 10:28
极速版是南京公司开发的,不是原来旗舰版的深圳公司的团队,应该是极速版没有考虑到设计后台处理,不够人 ...

哦,竟然是两个公司分别做的
作者: aquan112    时间: 2017-2-28 22:10:50

学习




欢迎光临 开拓者期货期权程序化系统交易论坛 (http://bbs.tb18.net/) Powered by Discuz! X2