版主辛苦了,回看了历史贴,实盘交易遇到的问题还是搞不明白,麻烦帮我看下~
代码如下:
if 开多 and 滤多 then begin
SELLSHORT(HOLDING<0,100%,market),PERTRADER;
【下单】MA05 价0.000000 量4 买卖0 类型1 开平0 账户******* Formula 1
出现开不了仓的情况,提示CTP资金不足。 1.上面的量4,是否就是PERTRADER计算出来的交易手数?实际上我的账户资金只够交易2手。为什么会出现这个情况呢? 2.导致CTP资金不足,是否和这里的market函数使用有关? 3.CTP资金不足,是不是和开平语句的顺序有关?是否需要把所有平仓的语句放在代码最前列?
|
1、量4是根据账户可用资金计算出来的。需要检查下合约信息设置中相应品种的单位乘数、保证金费率是否与实际的一致,程序是通过合约信息中的来计算的,而不是通过账户中真实的保证金率来计算的。另外计算的时候是不包含手续费的,实际100%下单也可能加上手续费后出现资金不足。
2、这个没有关系,都是使用最新价来计算的,不是market的涨停价或跌停价来计算手数的。
3、把平仓语句写在前面,保证了平仓之后,资金的释放,确实是有利于资金的有效利用。
1、量4是根据账户可用资金计算出来的。需要检查下合约信息设置中相应品种的单位乘数、保证金费率是否与实际的一致,程序是通过合约信息中的来计算的,而不是通过账户中真实的保证金率来计算的。另外计算的时候是不包含手续费的,实际100%下单也可能加上手续费后出现资金不足。
2、这个没有关系,都是使用最新价来计算的,不是market的涨停价或跌停价来计算手数的。
3、把平仓语句写在前面,保证了平仓之后,资金的释放,确实是有利于资金的有效利用。
非常感谢,写的很明白!
谢谢版主尽心解答,清楚了:)