以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  求助,同一根K线开平仓  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=144599)

--  作者:Amber_S
--  发布时间:2016/12/13 15:21:15
--  求助,同一根K线开平仓
如图,平仓反手会出现同一根K线开平仓,具体代码框架如下,请大神帮忙看看~
图片点击可在新窗口打开查看


KD:=AAA AND HOLDING=0; 
KK:=BBB AND HOLDING=0;   

//开仓
IF KD THEN
  BEGIN
    开多:BUY(1,SS,MARKET),ORDERQUEUE;
  END
IF KK THEN
  BEGIN
    开空:BUYSHORT(1,SS,MARKET),ORDERQUEUE;  
  END 

//平仓
PD:=CCC AND HOLDING>0 AND ENTERBARS>1; 
PK:=DDD AND HOLDING<0 AND ENTERBARS>1; 
ZS:=EEE AND ABS(HOLDING)>0 AND ENTERBARS>0; 

IF PD OR GDZS THEN
  BEGIN
    SELL(1,0,MARKET),ORDERQUEUE;
    BUYSHORT(FFF AND HOLDING=0,SS,MARKET),ORDERQUEUE;
  END

IF PK OR GDZS THEN 
  BEGIN
    SELLSHORT(1,0,MARKET),ORDERQUEUE;
    BUY(GGG AND HOLDING=0,SS,MARKET),ORDERQUEUE;
  END
    

--  作者:jinzhe
--  发布时间:2016/12/13 15:26:12
--  

http://www.weistock.com/bbs/dispbbs.asp?boardid=16&Id=94734

没有看到图,用户按照连接里面的方式发图


--  作者:Amber_S
--  发布时间:2016/12/13 15:30:13
--  
呀,图片在这.
--  作者:Amber_S
--  发布时间:2016/12/13 15:33:06
--  

图片点击可在新窗口打开查看此主题相关图片如下:捕获.jpg
图片点击可在新窗口打开查看
呀,不好意思,图片在这.

--  作者:jinzhe
--  发布时间:2016/12/13 15:42:24
--  
你把market改成marketr试试
--  作者:Amber_S
--  发布时间:2016/12/13 15:49:31
--  
K线信号仍然是一样的,只是回测本来是下一根K线开盘价执行变成本根K线收盘价执行而已呀.

图片点击可在新窗口打开查看此主题相关图片如下:捕获2.jpg
图片点击可在新窗口打开查看

--  作者:jinzhe
--  发布时间:2016/12/13 15:56:30
--  
你把代码都发一下,我本地试一下
--  作者:Amber_S
--  发布时间:2016/12/13 16:18:45
--  
INPUT:SS(8,1,30);  //开仓手数
INPUT:ZSJG(20000,10000,30000,1000); //止损价格
MA1:MA(C,13);
MA2:MA(C,26);

KD:=CROSS(MA1,MA2) AND HOLDING=0;   //开多
KK:=CROSS(MA2,MA1) AND HOLDING=0;   //开空

//开仓
IF KD THEN
  BEGIN
    开多:BUY(1,SS,MARKETR),ORDERQUEUE;
  END
IF KK THEN
  BEGIN
    开空:BUYSHORT(1,SS,MARKETR),ORDERQUEUE;  
  END 

//平仓
PD:=CROSS(MA2,MA1) AND HOLDING>0 AND ENTERBARS>1;   //平多
PK:=CROSS(MA1,MA2) AND HOLDING<0 AND ENTERBARS>1;  //平空
GDZS:=-OPENPROFIT>=ZSJG AND ABS(HOLDING)>0 AND ENTERBARS>1; //固定止损

IF PD OR GDZS THEN
  BEGIN
    SELL(1,0,MARKETR),ORDERQUEUE;
    BUYSHORT(MA2>MA1 AND HOLDING=0,SS,MARKETR),ORDERQUEUE;
  END

IF PK OR GDZS THEN 
  BEGIN
    SELLSHORT(1,0,MARKETR),ORDERQUEUE;
    BUY(MA1>MA2 AND HOLDING=0,SS,MARKETR),ORDERQUEUE;
  END

嗯嗯,简单来说就这样的,不管是MARKETR还是MARKET都会出现同根K线开平仓~

--  作者:jinzhe
--  发布时间:2016/12/13 16:21:24
--  
上面的代码作用在  哪个品种,哪个周期上的?
--  作者:Amber_S
--  发布时间:2016/12/13 16:43:48
--  
橡胶10分钟线呀.