以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  交易策略发布专区  (http://weistock.com/bbs/list.asp?boardid=10)
----  clivelong 实盘 策略 源码 发布 003 求解释  (http://weistock.com/bbs/dispbbs.asp?boardid=10&id=55231)

--  作者:轻一嗑
--  发布时间:2013/8/15 22:22:15
--  clivelong 实盘 策略 源码 发布 003 求解释

首先感谢clivelong童鞋的无私奉献,因为是一个程序盲,想请教交易原理和根据,也就是它是如何运作的。谢谢大家

 

 

 

input:K1(0.5,0,2,0.1);//多头突破波动比例
input:K2(0.5,0,2,0.1);//多头突破波动比例
input:Mday(1,0,9,1);//M日期最大价差
input:Nday(1,0,9,1);//N日前最大价差
input:LOTS(1,0,9,1);


         HighD:=callstock(stklabel,vthigh,6,-1);
        LowD:=callstock(stklabel,vtlow,6,-1);
        CloseD:=callstock(stklabel,vtclose,6,-1);
        CYC:=barslast(date<>ref(date,1))+1;        
        OpenD:=valuewhen(cyc=1,open);
        
        HH:= HHV(HighD,Mday);
        HC:= HHV(CloseD,Mday);
        LL:= LLV(LowD,Mday);
        LC:= LLV(CloseD,Mday);

        SellRange:=Max(HH - LC,HC - LL);
      
        HH:=HHV(HighD,Nday);
        HC:=HHV(CloseD,Nday);
        LL:=LLV(LowD,Nday);
        LC:=LLV(CloseD,Nday);

        BuyRange:=Max(HH - LC,HC - LL);
      
        
        UpperBand: OpenD + K1*BuyRange;
        LowerBand: OpenD - K2*SellRange;


        If    (HOLDING=0) THEN BEGIN
                If    (High>=UpperBand) THEN
                        Buy(HOLDING=0,lots,LIMITR,Max(Open,UpperBand));
               
                If    (Low<=LowerBand) THEN
                        BuyShort(HOLDING=0,lots,LIMITR,Min(Open,LowerBand));
        END

        If    (HOLDING<0) THEN BEGIN
                If    (High>=UpperBand) THEN BEGIN
                        SELLSHORT(HOLDING<0,lots,LIMITR,Max(Open,UpperBand));
                        Buy(HOLDING=0,lots,LIMITR,Max(Open,UpperBand));
                END
        END

        If    (HOLDING>0) THEN BEGIN
                If    (Low<=LowerBand) THEN BEGIN
                         Sell(holding>0,lots,limitr,Min(Open,LowerBand));
                        BuyShort(holding=0,lots,limitr,Min(Open,LowerBand));
                END
        END
        

持仓:holding,noaxis ,linethick0 ;
盈亏:asset-1000000,noaxis,coloryellow,linethick2;




// Dual Thrust
//这个系统是 Michael Chalek 在80 年代开发的 Dual Thrust。
//
//1. 在今天的收盘,计算两个值: 最高价-收盘价, 和 收盘价-最低价。然后取这两个值较大的那个,乘以k值0.7。把结果称为 触发值。
//
//2. 在明天的开盘,记录开盘价,然后在价格超过(开盘+触发值)时马上买入,或者价格低于(开盘-触发值)时马上卖空。
//

[此贴子已经被作者于2013/8/15 22:24:03编辑过]