以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- THOLDINGEX及THOLDING在有平仓单没成交时获取的实际持仓数混乱的问题 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=56007) |
-- 作者:chengold -- 发布时间:2013/8/30 16:45:56 -- THOLDINGEX及THOLDING在有平仓单没成交时获取的实际持仓数混乱的问题 以下是我的仿真测试程序: ====================================== RUNMODE:0; //监控持仓和资金状况 当前持仓量多头:=TBUYHOLDING(1); T1:=THOLDING; ===================================================== 我持有3手空单,还有三手没有成交的限价平空,见截图 运行程序后得到如下结果:
2013/08/30 16:19:08 周期TYPE:1 ===================================================== 持仓数-117是如何来的?我想收盘平空单,可是用TSELLHOLDINGEX(ZH1,PZ1,1)及TSELLHOLDING(1)都得不到正确的空单数3. 而THOLDING2的结果是多空相抵的数,如果有多单存在就不能作为平空单的手数。
|
-- 作者:chengold -- 发布时间:2013/8/30 16:53:16 -- 另外,我用很多方法,也不能获得未成交单信息,也无法撤销未成交的单。 |
-- 作者:lichenghu -- 发布时间:2013/8/30 17:03:46 -- 您好,本地返回值很正常啊! 用debugfile或者debugout输出看下
|
-- 作者:chengold -- 发布时间:2013/9/12 11:59:51 -- 得不到未成交单的数量,明明2手未成交单挂在那儿,返回是0.困扰很久了,郁闷啊。 |
-- 作者:王锋 -- 发布时间:2013/9/12 12:28:55 -- http://www.weistock.com/bbs/dispbbs.asp?boardid=4&Id=49428 请认真看看这里
遇到问题学会用日志来说话 |
-- 作者:chengold -- 发布时间:2013/9/12 13:00:56 -- 遇到问题学会用日志来说话这个功能我当然会 以下是我的消息及文件DEBUG输出 2013/09/12 12:50:05 滑点1.00 2013/09/12 12:50:05 周期TYPE:1 2013/09/12 12:50:05 当前持仓量多头0.00 2013/09/12 12:50:05 当前持仓量空头0.00 2013/09/12 12:50:05 当前可用资金1763277.25 2013/09/12 12:50:05 TIME113000 2013/09/12 12:50:05 未成交单0 |
-- 作者:chengold -- 发布时间:2013/9/12 13:02:00 -- 我是用后台交易 |
-- 作者:fly -- 发布时间:2013/9/12 13:33:52 -- 您的问题正在跟踪,请少候 |
-- 作者:fly -- 发布时间:2013/9/12 16:05:42 -- (1).TBUYHOLDINGEX----多头持仓(可用) (2).THOLDING----当前帐户持可用仓量 (3).THOLDING2----当前帐户实际持仓量
如果楼主手里,有两手后台程序化开的多单 (1).返回值为 2 (2).返回值为 2 (3).返回值为 2
如果楼主手里,有两手后台程序化开的多单,在发出平仓单没成交时 (1).返回值为 0 (2).返回值为 0 (3).返回值为 2
想收盘平单 用TISREMAIN(N)的值是否为1来判断是否有未成交单(1有未成交单),如果有未成交单,用TCANCEL撤掉未成交单,再进行收盘平仓的操作.
如果TISREMAIN(0)=0,则没有未成交单,则收盘平单 tsell(con, TBUYHOLDINGEX(.....),mkt); tsellshort(con,TSELLHOLDINGEX(.....),mkt);
目前发现在3.0版本里,未成交单的数量TREMAINQTY函数有点问题,您暂时不要使用该函数. 好在,您的这个策略暂时还用不到 未成交单的数量 这个函数. [此贴子已经被作者于2013/9/12 16:08:06编辑过]
|
-- 作者:chengold -- 发布时间:2013/9/13 9:53:54 -- 我的测试程序完整如下,希望能帮测试一下,我测的结果令人失望,IISREMAIN,TCANCEL,TCANCELEX,这几个命令都不管用。 我的程序中间需要用到未成交单的正确数量。
RUNMODE:1;
//开一个不可能成交的多单
{ { { //监控持仓和资金状况 T1:=THOLDING; T0:=TISREMAIN(0);
|