设为首页收藏本站

 找回密码
 注册
查看: 3690|回复: 9

关于开平仓自动转换的几个疑问 [复制链接]

Rank: 2

精华
0
UID
231361
积分
90
帖子
64
主题
17
阅读权限
30
注册时间
2016-4-1
最后登录
2017-11-11
发表于 2017-2-10 19:46:24 |显示全部楼层
新版本的开平仓自动转换功能是很实用的功能,可以降低手续费。但是本人对其中的机制不甚了解,请教如下:
假设:我每次开平仓都是1手,在今天进行了3次开平仓交易,那么收市后我的多、空仓位分别都是3手。第二天开盘后第一信号是开多单,那么此时系统是帮我平一手空单,对吗?如果是,我接下来的问题是:在我利用A_SendOrder进行委托下单并给出确定的委托价格OderPrice,并且使用了交易助手(但是交易助手中开仓和平仓的设置不一致,比如:开仓启用、平仓未启用)的情况下:1、系统将我这一手“开多”转为“平空”是用的OderPrice价格吗?2、转化后交易助手是否仍起作用?如果起作用,是以开仓设置为准呢还是平仓设置?

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
发表于 2017-2-13 14:31:25 |显示全部楼层
第二天信号是开多单的话。。帐户交易是平空一手。
1,是orderprice
2,交易助手仍按设置作用。如果平仓未启动的,第二天的第一个信号的平空是可能不受交易助手保护的。

使用道具 举报

Rank: 2

精华
0
UID
231361
积分
90
帖子
64
主题
17
阅读权限
30
注册时间
2016-4-1
最后登录
2017-11-11
发表于 2017-2-13 14:44:29 |显示全部楼层
谢谢

使用道具 举报

Rank: 2

精华
0
UID
231361
积分
90
帖子
64
主题
17
阅读权限
30
注册时间
2016-4-1
最后登录
2017-11-11
发表于 2017-3-9 22:30:44 |显示全部楼层
本帖最后由 noego345 于 2017-3-9 22:32 编辑
小米 发表于 2017-2-13 14:31
第二天信号是开多单的话。。帐户交易是平空一手。
1,是orderprice
2,交易助手仍按设置作用。如果平仓未启 ...


小米好。我还想接着问一个问题:假如我用A_SendOrder(Enum_Sell,Enum_Exit,TradeLots,OrderPrice)发单后,经过系统开平仓自动转换后变成了开空单。那么此时A_OpenOrderEntryOrExit的值是Enum_Exit还是Enum_Entry呢?懒得测试了,望小米一告便知。

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
发表于 2017-3-10 13:13:31 |显示全部楼层
noego345 发表于 2017-3-9 22:30
小米好。我还想接着问一个问题:假如我用A_SendOrder(Enum_Sell,Enum_Exit,TradeLots,OrderPrice)发单后 ...

指令下平仓单,在底层会按自动开平的规则改为开仓。
那么就是以开仓提交到交易所的,此委托单返回到帐户的的状态也是entry

使用道具 举报

Rank: 2

精华
0
UID
231361
积分
90
帖子
64
主题
17
阅读权限
30
注册时间
2016-4-1
最后登录
2017-11-11
发表于 2017-3-10 13:46:13 |显示全部楼层
小米 发表于 2017-3-10 13:13
指令下平仓单,在底层会按自动开平的规则改为开仓。
那么就是以开仓提交到交易所的,此委托单返回到帐户 ...


那么在如下代码中,紧接在A_SendOrder下一句中的A_OpenOrderEntryOrExit取到值的就是转换后的Enum_Entry吗?也就是说它是立即转换还是要等到下一个tick才转换呢?
Begin
...
A_SendOrder(Enum_Sell,Enum_Exit,TradeLots,OrderPrice);
if(A_OpenOrderEntryOrExit == Enum_Entry)
{
    //这个Tick的线程立即转换?
}
...
End

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
发表于 2017-3-10 13:58:57 |显示全部楼层
noego345 发表于 2017-3-10 13:46
那么在如下代码中,紧接在A_SendOrder下一句中的A_OpenOrderEntryOrExit取到值的就是转换后的Enum_Entry ...

不是当前tick,也不一定是下一个tick。
而是在该委托的回报从交易所返回到本地后。

使用道具 举报

Rank: 2

精华
0
UID
231361
积分
90
帖子
64
主题
17
阅读权限
30
注册时间
2016-4-1
最后登录
2017-11-11
发表于 2017-3-10 14:09:16 |显示全部楼层
小米 发表于 2017-3-10 13:58
不是当前tick,也不一定是下一个tick。
而是在该委托的回报从交易所返回到本地后。 ...

那么如上代码:if(A_OpenOrderEntryOrExit == Enum_Entry)这个判断是成立还是不会成立呢?

使用道具 举报

Rank: 10Rank: 10Rank: 10

精华
3
UID
5
积分
26584
帖子
12686
主题
49
阅读权限
200
注册时间
2007-7-20
最后登录
2021-11-3
发表于 2017-3-10 14:17:11 |显示全部楼层
noego345 发表于 2017-3-10 14:09
那么如上代码:if(A_OpenOrderEntryOrExit == Enum_Entry)这个判断是成立还是不会成立呢? ...

a_opendorderentryorexit在判断时是要跟索引参数的。。
必须要指定你判断的是哪一笔未成交单。。
如例代码是否成立要看是在哪个时机呀。。你要判断的索引是哪一笔,跟前面提到的转换委托的关系是什么?是否转换委托的返回值后?这些因素都要看的。。

使用道具 举报

Rank: 2

精华
0
UID
231361
积分
90
帖子
64
主题
17
阅读权限
30
注册时间
2016-4-1
最后登录
2017-11-11
发表于 2017-3-10 14:41:39 |显示全部楼层
小米 发表于 2017-3-10 14:17
a_opendorderentryorexit在判断时是要跟索引参数的。。
必须要指定你判断的是哪一笔未成交单。。
如例代 ...

函数A_OpenOrderEntryOrExit不带参数引用默认就是最后一笔未成交委托没错吧?在A_OpenOrderEntryOrExit引用的索引值和A_SendOrder(Enum_Sell,Enum_Exit,TradeLots,OrderPrice)一致的前提下,A_OpenOrderEntryOrExit需要在该委托的回报从交易所返回到本地后才能得到Enum_Entry吗?该委托发出以后到该委托的回报从交易所返回到本地这段时间,A_OpenOrderEntryOrExit(对应该委托的索引值)函数返回的值依然是Enum_Exit?我这样的理解对吗?

使用道具 举报

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

bottom

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

GMT+8, 2024-4-19 05:17

Powered by Discuz! X2 LicensedChrome插件扩展

© 2011-2012 交易开拓者 Inc.

回顶部