Rss & SiteMap

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

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

标题:这样的策略 如果用金字塔 怎么写

1楼
hhm0212 发表于:2016/3/20 20:48:06
  1. 1.允许连续买入2次
  2. 2.突破20周期高点买入1次,该仓位命名为'Buy1'
  3. 3.突破50周期高点买入1次,该仓位命名为'Buy2'
  4. 4.跌破10周期低点卖出'Buy1'的仓位
  5. 5.跌破25周期低点卖出'Buy2'的仓位

  6. Buy1: HHV(H,20),Shift1;
  7. Buy2: HHV(H,50),Shift1;
  8. Sell1: LLV(L,10),Shift1; 
  9. Sell2: LLV(L,25),Shift1; 
  10. AllowSameEntries(2);
  11. //if EntryName <> 'Buy1' then 
  12.   Buy('',1,Buy1+MinDiff,-1,OT_STOP,OB_NEXTBAR,'Buy1');
  13. //if EntryName <> 'Buy2' then 
  14.   Buy('',1,Buy2+MinDiff,-1,OT_STOP,OB_NEXTBAR,'Buy2');
  15. Sell('',1,Sell1,-1,OT_STOP,OB_NEXTBAR,'Sell1') from 'Buy1';
  16. Sell('',1,Sell2,-1,OT_STOP,OB_NEXTBAR,'Sell2') from 'Buy2';


这样的策略 如果用金字塔 怎么编写
2楼
hhm0212 发表于:2016/3/20 21:37:27
variable:n1=0,n2=0;
hh1:ref(hhv(c,20),1);
hh2:ref(hhv(c,50),1);
LL1:ref(LLv(c,10),1);
LL2:ref(LLv(c,25),1);
if cross(c,hh1) THEN 
BUY (1,20%,MARKET);
n1:=1;
if cross(c,hh2) THEN 
BUY (1,10%,MARKET);
n2:=1;

if cross(LL1,C) and n1=1 THEN  
SELL(1,HODLING,MARKET);
n1=0;

if cross(LL2,C) and n2=1 THEN  
SELL(1,HODLING,MARKET);
n2=0;
理论上应该是这样

但是实际上并不行 
因为我只跌破LL1的时候会把单子全平了 而不是只平我突破HH1时开的那20%
所以我想问的是全局变量具体怎么解决指令分组的问题





3楼
netfox 发表于:2016/3/20 22:25:41

拆成2个程序,不然你除非给2个仓位

 

1,X1:=4

2,  X2:=8

 

平仓时候  X1  平常时候X2

 

这样各自就不会错了,但是。。。容易会浆糊,所以你可以拆成2个啊

 

   我连同一个系统拆成多空各自开,各自优化。

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


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