Rss & SiteMap

金字塔客服中心 - 专业程序化交易软件提供商 http://www.weistock.com/bbs/

专业程序化软件提供商
共9 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:空仓语句

1楼
无人值守交易 发表于:2017/1/16 16:31:19

BEGIN
 IF HOLDING=0 THEN BUY(DIFF1>DEA1 AND K1>D1,100%,MARKET),PERTRADER;
 IF HOLDING>0 AND (DIFF1<DEA1 AND K1<D1), THEN//如果持有多单,上次开仓到当前的周期数大于N,那么 
   BEGIN
   SELL(HOLDING,0,MARKET);//平多单,以市价卖出所有持仓量
   END
 IF HOLDING=0 THEN SELLSHORT(DIFF1<DEA1 AND K1<D1,100%,MARKET),PERTRADER;
 IF HOLDING>0 AND (DIFF1>DEA1 AND K1>D1), THEN//如果持有多单,上次开仓到当前的周期数大于N,那么 
   BEGIN
   BUYSHORT(HOLDING,0,MARKET);//平多单,以市价卖出所有持仓量
   END
END

想请问下,上述语句哪里有问题,为什么期货上不开空仓呢?

2楼
jinzhe 发表于:2017/1/16 16:34:46

你的代码我没看明白

IF HOLDING>0 AND (DIFF1>DEA1 AND K1>D1), THEN

这里的逗号是什么意思?

3楼
无人值守交易 发表于:2017/1/16 16:37:48

就是实现kdj,macd共振,然后,平多。

那么标准格式应该如何写呢?

4楼
jinzhe 发表于:2017/1/16 16:39:08

IF HOLDING>0 AND (DIFF1>DEA1 AND K1>D1), THEN//如果持有多单,上次开仓到当前的周期数大于N,那么 
   BEGIN
   BUYSHORT(HOLDING,0,MARKET);//平多单,以市价卖出所有持仓量
   END
END

 

这里的holding>0要改成holding=0

 

 

IF HOLDING=0 THEN SELLSHORT(DIFF1<DEA1 AND K1<D1,100%,MARKET),PERTRADER;

 

这里的holding=0 要改成holding<0

 

剩下的你编译对就没问题,编译不对我也不知道你要干什么

5楼
无人值守交易 发表于:2017/1/16 16:51:01

改成<0之后编译通过,但是还是没有开空仓的信号是什么原因呢?多仓开是没有问题的。

BEGIN
 IF HOLDING=0 THEN BUY(DIFF1>DEA1 AND K1>D1,100%,MARKET),PERTRADER;
 IF HOLDING>0 AND (DIFF1<DEA1 AND K1<D1), THEN//如果持有多单,上次开仓到当前的周期数大于N,那么 
   BEGIN
   SELL(HOLDING,0,MARKET);//平多单,以市价卖出所有持仓量
   END
就是只有以上这段的时候是没有问题的。

想要一个kdjmacd共振开平仓的公式。

6楼
jinzhe 发表于:2017/1/16 16:57:05

那么holding>0改成holding=0的改没改?

7楼
无人值守交易 发表于:2017/1/16 17:28:27

改了,然后多头的信号也没了

8楼
jinzhe 发表于:2017/1/16 17:30:17
把你改后的代码发一下
9楼
无人值守交易 发表于:2017/1/16 17:52:53

不好意思,从t过来,开空平空条件搞反了。谢谢回答!

共9 条记录, 每页显示 10 条, 页签: [1]


Powered By Dvbbs Version 8.3.0
Processed in 0.01563 s, 3 queries.