以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  【加急】平仓后无法反手开仓,是哪里出的问题?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=1705)

--  作者:埃及建筑
--  发布时间:2010/5/25 17:05:58
--  K线图右上角请搞一个小报价框。

在金字塔里实现“平仓后反手开仓”指令的时候,总是平仓后不能开仓,是什么原因造成的?

 

如下:

 

IF LONG THEN
BEGIN
SELLSHORT(HOLDING<0,HOLDING,LMT,C);
BUY(HOLDING=0,1,LMT,C);
END

 

请详解,感谢。


--  作者:admin
--  发布时间:2010/5/25 18:03:24
--  
LMT 是用于后台交易的指令,请看论坛置顶帖子的公式系统常见问题
--  作者:埃及建筑
--  发布时间:2010/5/25 20:46:45
--  

你好,我本来就是运行的后台程序化交易的。

 

IF LONG THEN
BEGIN
SELLSHORT(HOLDING<0,HOLDING,LMT,C);
BUY(HOLDING=0,1,LMT,C);
END

IF SHORT THEN
BEGIN
SELL(HOLDING>0,HOLDING,LMT,C);
BUYSHORT(HOLDING=0,1,LMT,C);
END

 

 

在实际运用中,金字塔无法实现“平掉原仓后立即反手开仓”。在逻辑里两者是先后顺序,但在实际下单交易中几乎是同步进行,前后如果没有衔接好,很有可能就存在原仓平掉后反手仓下不进去。而金字塔似乎在这个问题上没有好的处理方式。

 


--  作者:admin
--  发布时间:2010/5/25 20:52:01
--  
金字塔在设计时已经充分考虑平仓反手的顺序下单问题,请仔细查看ORDERQUEUE指令说明
--  作者:admin
--  发布时间:2010/5/25 20:53:22
--  

IF LONG THEN
BEGIN
SELLSHORT(HOLDING<0,HOLDING,LMT,C),ORDERQUEUE;
BUY(HOLDING=0,1,LMT,C),ORDERQUEUE;
END

IF SHORT THEN
BEGIN
SELL(HOLDING>0,HOLDING,LMT,C),ORDERQUEUE;
BUYSHORT(HOLDING=0,1,LMT,C),ORDERQUEUE;
END

 

还有,SELLSHORT函数是只能用在图表显示的,不知道你是否清楚


--  作者:埃及建筑
--  发布时间:2010/5/25 21:27:06
--  

谢谢老师

 

IF LONG THEN
BEGIN
TSELLSHORT(THOLDING<0,THOLDING,LMT,C),ORDERQUEUE;
TBUY(THOLDING=0,SS,LMT,C),ORDERQUEUE;
END

IF SHORT THEN
BEGIN
TSELL(THOLDING>0,THOLDING,LMT,C),ORDERQUEUE;
TBUYSHORT(THOLDING=0,SS,LMT,C),ORDERQUEUE;
END

没问题吧