以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [求助]进场后第三天,买入价下跌2%平仓怎么实现?  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=154882)

--  作者:rc小影
--  发布时间:2017/6/8 15:04:16
--  [求助]进场后第三天,买入价下跌2%平仓怎么实现?
用指标交易,进场后第3天 或 买入价跌了2% 平仓,怎么写?
例: macd金叉进场,进场后3天 或  买入价跌2% 平仓 
求解答。。。

--  作者:wenarm
--  发布时间:2017/6/8 15:25:00
--  

这个需要在什么周期下使用?


--  作者:rc小影
--  发布时间:2017/6/8 15:25:53
--  
最好是30分钟,如不行就日线
--  作者:rc小影
--  发布时间:2017/6/8 15:49:12
--  
老师,我又细想了下,我把需求详细列一下:
1、周期为30分钟线
2、买点:满足指标即可
3、卖点:
    a.买入后,买入价跌2%
    b.买入后,10根K线(30分钟K线)内,没有涨2%
    c.买入后,三日内(日K线)涨幅未到6%
    d.以上均未触发时,买入后的第5天平仓
还望老师能抽空解答,感激不尽

--  作者:wenarm
--  发布时间:2017/6/8 16:03:32
--  

if  DATEDIFF( ref(date,ENTERBARS),date )>=3 or (close-ENTERPRICE)/ENTERPRICE<=-0.02 then sell();

一楼的结果。你可以参考上述处理思路进行处理。

 


--  作者:rc小影
--  发布时间:2017/6/8 16:38:28
--  
老师,试了下还是不行啊,30分钟情况下怎么做
--  作者:admin
--  发布时间:2017/6/8 17:08:05
--  

(close-ENTERPRICE)/ENTERPRICE<=-0.02 跌幅计算条件

DATEDIFF( ref(date,ENTERBARS),date )>=3//求得上次开仓价是的日期和当前日期的间隔数。

 

你说的不行指的是什么?上面给你的是代码条件,平仓语句并没有写完整,你自己补充下参数就行。

4楼中的需求基本可以参考上面的条件方式实现。


--  作者:rc小影
--  发布时间:2017/6/9 11:18:24
--  
条件1:=MA(CLOSE,5)>=MA(CLOSE,30);
条件2:=MA(CLOSE,10)>=MA(CLOSE,30);
条件3:=MA(CLOSE,30)>MA(CLOSE,60);
条件4:=MA(CLOSE,60)>MA(CLOSE,120);

条件5:=REF(MA(CLOSE,5),4)>=REF(MA(CLOSE,30),4);
条件6:=REF(MA(CLOSE,10),4)>=REF(MA(CLOSE,30),4);
条件7:=REF(MA(CLOSE,30),4)>REF(MA(CLOSE,60),4);

条件一:=(条件1 AND 条件2 AND 条件3 AND 条件4 AND 条件5 AND 条件6 AND 条件7);

条件9:=(MA(VOL,5) >= (MA(VOL,10)*0.9));
条件10:=SLOPE(LOW,30)>=SLOPE(INDEXL/100,30);
条件11:=REF(SLOPE(LOW,30),20)>= 0;
条件12:=BARSCOUNT(CLOSE)>=250;

条件二:= (条件9 AND 条件10 AND 条件11 AND 条件12);

手数:=ss;
//交易条件

入后跌2:=(close-ENTERPRICE)/ENTERPRICE<=-0.02;
入后3日未到4:=DATEDIFF(ref(date,ENTERBARS),date) = 3 and (close-ENTERPRICE)/ENTERPRICE<= 0.04;
到了第5日:=DATEDIFF( ref(date,ENTERBARS),date) >= 5;

开多平空条件:= 条件一 AND 条件二;//开多平空条件
开空平多条件:= 入后跌2 or 入后3日未到4 or 到了第5日;//开空平多条件


//交易系统
平空:SELLSHORT(开多平空条件,手数,MARKET);
平多:SELL(开空平多条件,手数,MARKET);
开多:BUY(开多平空条件,手数,MARKET);
开空:BUYSHORT(开空平多条件,手数,MARKET);

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;


1.我那几个条件写的对吗,平开操作对不对?
2.买入后10根K线内涨幅未达2% 这个条件不知道怎么写


--  作者:pyd
--  发布时间:2017/6/9 13:27:22
--  
hh:=hhv(h,enterbars);
aa:(hh-enterprice)/enterprice<=0.02;
pd:enterbars>=10 and aa;
[此贴子已经被作者于2017/6/9 13:28:39编辑过]

--  作者:rc小影
--  发布时间:2017/6/9 14:11:56
--  
条件1:=MA(CLOSE,5)>=MA(CLOSE,30);
条件2:=MA(CLOSE,10)>=MA(CLOSE,30);
条件3:=MA(CLOSE,30)>MA(CLOSE,60);
条件4:=MA(CLOSE,60)>MA(CLOSE,120);

条件5:=REF(MA(CLOSE,5),4)>=REF(MA(CLOSE,30),4);
条件6:=REF(MA(CLOSE,10),4)>=REF(MA(CLOSE,30),4);
条件7:=REF(MA(CLOSE,30),4)>REF(MA(CLOSE,60),4);

条件一:=(条件1 AND 条件2 AND 条件3 AND 条件4 AND 条件5 AND 条件6 AND 条件7);

条件9:=(MA(VOL,5) >= (MA(VOL,10)*0.9));
条件10:=SLOPE(LOW,30)>=SLOPE(INDEXL/100,30);
条件11:=REF(SLOPE(LOW,30),20)>= 0;
条件12:=BARSCOUNT(CLOSE)>=250;

条件二:= (条件9 AND 条件10 AND 条件11 AND 条件12);

cond1:= 条件一 and 条件二;

//交易条件

入后跌2:=(close-ENTERPRICE)/ENTERPRICE<=-0.02;
入后3日未到4:=DATEDIFF(ref(date,ENTERBARS),date) = 3 and (close-ENTERPRICE)/ENTERPRICE<= 0.04;
到了第5日:=DATEDIFF( ref(date,ENTERBARS),date) >= 5;
hh:=hhv(h,enterbars);
aa:(hh-enterprice)/enterprice<=0.02;
pd:enterbars>=10 and aa;//10个周期内涨幅未达到2%

cond2:= 入后跌2 or 入后3日未到4 or 到了第5日 or pd;

if cond1 and holding = 0 then
begin 
buy(1,1,limitr,c);
end

if cond2 and HOLDING > 0 THEN
begin
sell(holding>0,1,marketr);
end; 

当前持仓:HOLDING,COLORGRAY,LINETHICK0;
当前资产:ASSET,NOAXIS,COLORGRAY;

这样写完,测试为什么没反应