以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  日线交易,后台轮询,如何设定当天不平仓。  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=165366)

--  作者:qq代人发帖
--  发布时间:2018/9/5 8:50:49
--  日线交易,后台轮询,如何设定当天不平仓。
日线交易,后台轮询,如何设定当天不平仓,请问如何写?
--  作者:FireScript
--  发布时间:2018/9/5 9:10:45
--  
 你这个当天不平仓是要要求当天开的不平仓是吗?
--  作者:xuehuihe
--  发布时间:2018/9/5 9:16:44
--  
是的,当天开的新仓,当天不平。。。。。。。


--  作者:FireScript
--  发布时间:2018/9/5 9:49:35
--  
先说明下:只有上期所才有今老仓概念,其他交易所是没有的。也就是说如果不是上期所,程序里面对持仓无法进行今仓老仓的区别的。
你可以想下如果手工平仓能区分今天开的仓和昨天开的仓的情况下,程序才可能实现。如果手工都不能区分,程序化更不行了。

假如是上期所情况下:目前可以判断持仓的今仓老仓情况,但是无法在代码中指定平老仓不平今仓。需要在软件中设置平老仓优先,并且还需要你代码里面配合。
交易-下单设置  这里先设置下

图片点击可在新窗口打开查看此主题相关图片如下:temp.png
图片点击可在新窗口打开查看

然后因为只是老仓优先,如果只平老仓的话,你需要读取老仓数量,然后设置平仓量,否则还是会可能平到今仓的。

利用这个代码判断老仓量:TBUYHOLDINGEX(\'\' ,\'\' ,2)-TBUYHOLDINGEX(\'\' ,\'\' ,0 )

平仓时候设置平仓量和老仓量对齐即可。并且如果没有老仓就不平仓,否则会把今仓平掉。

大致步骤就是这样的:
1.设置平老仓优先
2.读取老仓数量
3.如果有老仓,平老仓数量的仓位,如果没有老仓,不平仓,否则会平到今仓。




--  作者:xuehuihe
--  发布时间:2018/9/5 9:58:19
--  
如果我今天刚开仓,今天不平,平仓必须是以前的仓位。请问代码怎么写?我没讲明白吗?
--  作者:FireScript
--  发布时间:2018/9/5 10:00:29
--  
 4楼已经表述了这个问题的解决方案,是有不清楚的地方吗?
--  作者:xuehuihe
--  发布时间:2018/9/5 10:02:22
--  
你意思是,另外两个交易所实现不了吗?就是如果我今天开了仓,当天出现平仓信号的话,不执行;只有到了第二天以后,再出现平仓信号,才会平仓。
--  作者:xuehuihe
--  发布时间:2018/9/5 10:04:42
--  
我其实是要读取开仓时间,如果开仓时间是当日,则不平仓。读取开仓日期,这能做到吗?
--  作者:FireScript
--  发布时间:2018/9/5 10:18:24
--  
 如果你只是要求当日开过仓,当日允许触发平仓的话,那可以这样子:

TOPENBAR 函数是返回开仓历时,也是上次开仓距离现在的K线距离,因为你是日线。所以这个函数返回值能直接判断最近一次开仓是否是昨天还是今天。

“当天开的仓不平”和“当天开了仓不平”  还是有点差异的.....

--  作者:xuehuihe
--  发布时间:2018/9/5 10:28:16
--  
好的,谢谢解答。