欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → [求助]策略开仓问题

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有4255人关注过本帖树形打印复制链接

主题:[求助]策略开仓问题

帅哥哟,离线,有人找我吗?
天天涨停
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
[求助]策略开仓问题  发帖心情 Post By:2019/4/3 17:14:04    Post IP:106.87.47.80[只看该作者]

老师,你好,图表策略,第一个策略没有盈利不卖,想转换为第二个策略开仓,如果第二个策略没有盈利,想转换为第三个策略开仓,请老师帮忙尽快写一下。没有盈利不卖转换为第二个策略开仓,

第一个策略:

MA1:=MA(CLOSE,5);
MA2:=MA(CLOSE,20);

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

开多平空条件:=CROSS(MA1,MA2);//开多平空条件
开空平多条件:=CROSS(MA2,MA1);//开空平多条件

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

第二个策略:

DIFF :=EMA(CLOSE,12) - EMA(CLOSE,26);
DEA  :=EMA(DIFF,9);
MACD :=2*(DIFF-DEA);

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

开多平空条件:=CROSS(MACD,0);//开多平空条件
开空平多条件:=CROSS(0,MACD);//开空平多条件

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

第三个策略:

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:=SMA(RSV,P1,1);
D:=SMA(K,P2,1);
J:=3*K-2*D;

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

开多平空条件:=CROSS(K,D);//开多平空条件
开空平多条件:=CROSS(D,K);//开空平多条件

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


 


 回到顶部
帅哥哟,离线,有人找我吗?
天天涨停
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
  发帖心情 Post By:2019/4/3 18:13:20    Post IP:106.87.47.80[只看该作者]

请老师帮忙改一下策略或写一个转换开关语言。

 


此主题相关图片如下:3.png
按此在新窗口浏览图片

INPUT:ss(1,1,100,1);
input:a1(5,0,40,1),a2(6,1,100,1),a3(12,1,200,1),a4(5,1,200,1),P(4,1,2000,1),W(2000,1,2000,1);
Var1:=(C+L+H)/3;
Var2:=EMA(Var1,a1);
Var3:=EMA(Var2,a2);
Var4:=eMA(Var3,a3);
Var5:=eMA(Var4,a4);
生命线:=eMA(Var3,2),COLORRED,POINTDOT;
手数:=ss;
 //交易条件:
 sellcond:=(C+5)<生命线;
 buycond:=(C-5)>生命线;
//交易系统

if buycond then
begin
1平空: sellshort(holding<0 and OPENPROFIT>10,HOLDING,MARKETR,(H+L)/2)IGNORECHECKPRICE;
1开多: buy(holding=0,ss,LIMITR,(H+L)/2)IGNORECHECKPRICE;

end

if sellcond then
begin
1平多: sell(holding>0 and OPENPROFIT>10 ,HOLDING,MARKETR,(H+L)/2)IGNORECHECKPRICE;
1开空: buyshort(holding=0,ss,LIMITR,(H+L)/2)IGNORECHECKPRICE;

end


//第二个策略

//中间变量
MA1:=MA(CLOSE,5);
MA2:=MA(CLOSE,20);


//交易条件

开多平空条件1:=CROSS(MA1,MA2);//开多平空条件
开空平多条件1:=CROSS(MA2,MA1);//开空平多条件

//交易系统
2平空:SELLSHORT(开多平空条件1 and HOLDING<0 and OPENPROFIT>100,HOLDING,MARKET);
2平多:SELL(开空平多条件1 and HOLDING>0 and OPENPROFIT>100,HOLDING,MARKET);
2开多:BUY(开多平空条件1 ,手数,MARKET);
2开空:BUYSHORT(开空平多条件1,手数,MARKET);

//第三策略
//没有盈利不卖
RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;
K:=SMA(RSV,3,1);
D:=SMA(K,3,1);
J:=3*K-2*D;


//交易条件

开多平空条件2:=CROSS(K,D);//开多平空条件
开空平多条件2:=CROSS(D,K);//开空平多条件

//交易系统
3平空:SELLSHORT(开多平空条件2 and OPENPROFIT>100,HOLDING,MARKET);
3平多:SELL(开空平多条件2 and OPENPROFIT>100 ,HOLDING,MARKET);
3开多:BUY(开多平空条件2 and HOLDING=0,手数,MARKET);
3开空:BUYSHORT(开空平多条件2 and HOLDING=0 ,手数,MARKET);


 回到顶部
帅哥哟,离线,有人找我吗?
天天涨停
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
  发帖心情 Post By:2019/4/3 18:18:02    Post IP:106.87.47.80[只看该作者]

老师,你好,这三个策略不能同时开仓,只能是第一个策略开仓后没有盈利,不平仓,转换为第二个策略才开仓,第二个策略没有盈利,不平仓,转换为第三个策略才开仓,第三个策略没有盈利,不平仓,转换为第一策略或第二策略开仓。


 回到顶部
帅哥哟,离线,有人找我吗?
天天涨停
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
  发帖心情 Post By:2019/4/4 8:41:55    Post IP:106.87.46.206[只看该作者]

有人在吗


 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/4/4 9:31:16    Post IP:180.169.30.6[只看该作者]

 平仓到底以哪个策略的盈利为准?比如第二个策略开仓之后,第一个策略盈利了。平仓吗?


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
天天涨停
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
  发帖心情 Post By:2019/4/4 9:39:31    Post IP:106.87.46.206[只看该作者]

1、总仓位有盈利,平仓,任意一个策略出平仓信号就平仓。

2、不管哪个策略有盈利,各平各的仓。

三个策略是,第一个策略没有盈利不卖,转为第二个策略,有盈利,就卖,没有盈利就不卖,转为第三个策略,第三个策略有盈利,就卖,没有盈利就不卖,转为第一个策略;第三策略不能同时开仓,必须是前一个策略没有盈利,第二个策略才开仓,


 回到顶部
帅哥哟,离线,有人找我吗?
FireScript
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:14496 积分:0 威望:0 精华:0 注册:2017/7/4 13:40:18
  发帖心情 Post By:2019/4/4 9:57:58    Post IP:180.169.30.6[只看该作者]

我先整理下思路,看看逻辑上是否有漏掉。


命数如织,当如磐石。
 回到顶部
帅哥哟,离线,有人找我吗?
天天涨停
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
  发帖心情 Post By:2019/4/4 10:03:35    Post IP:106.87.46.206[只看该作者]

谢谢老师,我急用。

 回到顶部
帅哥哟,离线,有人找我吗?
天天涨停
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
  发帖心情 Post By:2019/4/4 14:09:14    Post IP:106.87.46.206[只看该作者]

老师,您好,

第一个策略开仓,开仓后,在平仓之前没有盈利(或只要开仓后没有盈利)就转为第二个策略开仓,第二个策略开仓后,在平仓之前没有盈利(或只要开仓后没有盈利)就转为第三个策略开仓,第三个策略开仓后,在平仓之前没有盈利(或只要开仓后没有盈利)就转为第四个策略开仓。第四个策略开仓后,在平仓之前没有盈利(或只要开仓后没有盈利)就转为第一个策略开仓或第二个策略开仓或第三个策略开仓。

谢谢老师帮忙写一下。

ariable:cc1=0,cc2=0,cc3=0,cc4=0,cc5=0,cc6=0; 

//策略1
buycond1:=ref(c,1)>ref(o,1) and ref(c,2)>ref(o,2) and ref(c,3)>ref(o,3);
sellcond1:=ref(c,1)<ref(o,1) and ref(c,2)<ref(o,2) and ref(c,3)<ref(o,3);
//策略2
buycond2:=ref(h,1)>ref(hhv(h,10),2);
sellcond2:=ref(l,1)<ref(llv(l,10),2);
//策略3(5日线高于15日线做多,反之做空)
ma5:=ma(c,5);
ma15:=ma(c,15);
buycond3:=ref(ma5,1)>ref(ma15,1);
sellcond3:=ref(ma5,1)<ref(ma15,1);
//策略4
buycond4:=ref(l,1)>ref(h,3);
sellcond4:=ref(h,1)<ref(l,3);
//策略5
buycond5:=ref(c,1)>ref(c,15);
sellcond5:=ref(c,1)<ref(c,15);
//策略6
buycond6:=ref(vol,1)>ref(vol,1) and ref(vol,2)>ref(vol,2) and ref(vol,3)>ref(vol,3);
sellcond6:=ref(vol,1)<ref(vol,1) and ref(vol,2)<ref(vol,2) and ref(vol,3)<ref(vol,3);

//策略1
if buycond1   then 
begin 
//平空1: sellshort(holding<0 and OPENPROFIT>0,HOLDING,MARKETR)IGNORECHECKPRICE;
1开多: buy(holding=0,1,LIMITR,(H+L)/2)IGNORECHECKPRICE;
cc1=cc1+1; 

if not(buycond1) then cc1:=0;
if buycond1 and OPENPROFIT<0 then cc2:=1;
if buycond1 and OPENPROFIT>0 then cc1:=0;
end

if sellcond1 and cc1=0 then 
begin
1平多: sell(holding>0 and OPENPROFIT>0,HOLDING,MARKETR)IGNORECHECKPRICE;
//开空1: buyshort(holding=0,1,LIMITR,(H+L)/2)IGNORECHECKPRICE;
end

//策略2
if buycond2   then 
begin 
2平空: sellshort(holding<0 and OPENPROFIT>0,HOLDING,MARKETR)IGNORECHECKPRICE;
//开多2: buy(holding=0,5,LIMITR,(H+L)/2)IGNORECHECKPRICE;
end

if sellcond2 then 
begin
//平多2: sell(holding>0 and OPENPROFIT>0 ,HOLDING,MARKETR)IGNORECHECKPRICE;
2开空: buyshort(holding=0,5,LIMITR,(H+L)/2)IGNORECHECKPRICE;
end

//策略3
if buycond3 then 
begin 
//平空3: sellshort(holding<0 and OPENPROFIT>0 ,HOLDING,MARKETR)IGNORECHECKPRICE;
3开多: buy(holding=0,1,LIMITR,(H+L)/2)IGNORECHECKPRICE;
end

if sellcond3 then 
begin
//平多3: sell(holding>0 and OPENPROFIT>0 ,HOLDING,MARKETR)IGNORECHECKPRICE;
3开空: buyshort(holding=0,1,LIMITR,(H+L)/2)IGNORECHECKPRICE;
end

//策略4
if buycond4 then 
begin 
4平空: sellshort(holding<0 and OPENPROFIT>0,HOLDING,MARKETR)IGNORECHECKPRICE;
//开多4: buy(holding=0,1,LIMITR,(H+L)/2)IGNORECHECKPRICE;
end

if sellcond4 then 
begin
//平多4: sell(holding>0 and OPENPROFIT>0 ,HOLDING,MARKETR)IGNORECHECKPRICE;
4开空: buyshort(holding=0,1,LIMITR,(H+L)/2)IGNORECHECKPRICE;
end

 回到顶部
帅哥哟,离线,有人找我吗?
天天涨停
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:论坛游侠 帖子:117 积分:0 威望:0 精华:0 注册:2019/1/18 14:44:34
  发帖心情 Post By:2019/4/8 8:22:11    Post IP:106.87.45.194[只看该作者]

有人吗

 回到顶部
总数 19 1 2 下一页