快三彩票开户

您現在的位置:程序化交易>> 期貨公式>> 交易開拓者(TB)>> 開拓者公式>>正文內容

開拓者盈多虧交易策略源碼[開拓者公式]

 

//------------------------------------------------------------------------
// 簡稱: JY
// 名稱:盈多虧少
// 類別: 公式應用
// 類型: 用戶應用
// 輸出: cotps.com
//------------------------------------------------------------------------

Params
    Bool bInitStatus(false);   
    Numeric InitMP(0);
    Numeric MidLinel(5600);
    Numeric MidLineLength(250);
    Numeric FirstGrid(3);
    Numeric TotalGrids(10);
    Numeric GridInterval(3);
    Numeric WinGrid(3);   
    Numeric EveryLots(1);   
    Numeric MidLineWeieht(1);
    Numeric ExitOnCloseMins(14.50);
        
Vars
    Numeric MidLineWeight;
    NumericSeries midline;   
    Numeric MinPoint;   
    Numeric AvgOfClose;   
    Numeric AskLine;     
    Numeric BidLine;     
    NumericSeries RealMidLine;     
    Numeric MyRealMp(0);     
    Numeric TmpGridIndex;     
    Numeric TmpPrice;
        Numeric TmpPriee;
        Numeric OpenDPrice;
        
Begin

     OpenDPrice= opend;
    if(day<>day[1])     
      {
             midline=OpenDPrice;
          }Else         
         {
                    midline=midline[1];
                 }
        MinPoint=MinMove*PriceScale;
        MyRealMp=GetGlobalvar (0);
        AvgOfClose =AverageFC(Close, MidLineLength);     
    If (BarStatus== O)   
      {
            If(MyRealMp  ==  InvalidNumeric || bInitStatus)
            {
                           MyRealMp=InitMP;
                           SetGlobalVar(0,MyRealMp);
                        }Else
                        If(BarStatus==2&&A_AccountID!="")
               {
                              If(Q_AskPrice <= 0||Q_BidPrice <=0 )
                                  Return;
                           }
          }
        
         If(Q_BidPrice==Q_UpperLimit||Q_AskPrice==Q_LowerLimit)
        {
               Return;
                }      
    If ((Time==0.0900||Time==0.1030||Time==0.1330)&&(High ==Low))
         {
               Return;
                }            
    If (CurrentTime<ExitOnCloseMins/100)
        {
                   RealMidLine=MidLine*MidLineWeight+AvgOfClose*(1-MidLineWeight);

               AskLine=Q_AskPrice;
               BidLine=Q_BidPrice;
               Commentary ("中線="+Text (RealMidLine));
               Commentary ("叫賣價="+Text (Askline));
               Commentary ("叫買價"+Text (BidLine) );
        If (MyRealmP<=0 &&BidLine>RealMidLine+FirstGrid*MinPoint)
           {
                  TmpPrice=RealMidLine+FirstGrid*MinPoint+Abs (MyRealMp)* (GridInterval*MinPoint);
              TmpPriee=Ceiling (TmpPrice, Minpoint);   
              Commentary ("開倉價="+text (TmpPrice));   
              TmpGridIndex=1- IntPart   ((BidLine-RealMidLine -FirstGrid*MinPoint)/(GridInterval*MinPoint));
                        If(TmpGridIndex<MyRealMp&&TmpGridIndex>=-1*TotalGrids)
                 {
                                     MyRealMp=MyRealMp-1; A_SendOrder (Enum_Buy, Enum_Entry, EveryLots, BidLine);
                                 }//來源: cotps.com
                  }Else
                  If(MyRealMp>=0 && AskLine<RealMidLine- FirstGrid*MinPoint)
         
            {
                            TmpPrice=RealMidLine -FirstGrid*MinPoint -Abs(MyRealMp)*(GridInterval*MinPoint);
                TmpPrice= Floor (TmpPrice, MinPoint);               
                                Commentary ("開倉價="+Text (TmpPrice));                              
                TmpGridIndex=1+Intpart ((RealMidLine- FirstGrid*MinPoint- AskLine)/(GridInterval*MinPoint));
              If(TmpGridIndex>MyRealMp && TmpGridIndex<=TotalGrids)               
                 {
                                   MyRealMp=MyRealMp+1;
                                   A_SendOrder(Enum_Sell, Enum_Entry, EveryLots, AskLine);
                                 }
             }                                 
                  If (MyRealMp>O)                                                
                     {
                                             TmpPrice=RealMidLine-FirstGrid*MinPoint - (Abs (MyRealMp) -1) * (GridInterval*MinPoint) +WinGrid*MinPoint;
                         TmpPrice = Ceiling(TmpPrice, MinPoint);
                         Commentary ("平倉價 ="+Text (TmpPriee));                           
                    }Else
                                        If (MyRealMp<O)
                       {
                                              TmpPrice=RealMidLine+FirstGrid*MinPoint +(Abs (MyRealMp)- 1 )*(GridInterval*MinPoint) -WinGrid*MinPoint;  
                                                 TmpPriee = Floor (TmpPrice, MinPoint);                              
                          Commentary ("平倉價="+Text (TmpPrice));
                                           }                           
                       TmpGridIndex=-1- IntPart((AskLine-FirstGrid*MinPoint+WinGrid*MinPoint-RealMidLine)/(GridInterval*MinPoint));      
                       TmpGridIndex=min (0, TmpGridIndex);
                       If(TmpGridIndex>MyRealMp)  
                          {
                                                     MyRealMp=MyRealMp+1;
                                                         A_SendOrder (Enum_Sell, Enum_Exit, EveryLots,AskLine);   
                             TmpGridIndex=1+IntPart((RealMidLine-FirstGrid*MinPoint+WinGrid*MinPoint-BidLine)/(GridInterval*MinPoint));         
                                                         TmpGridIndex=max (0, TmpGridIndex);
                                                  }
                                          If(TmpGridIndex < MyRealMp)  
                          {
                                                        MyRealMp=MyRealMp-1;
                                                        A_SendOrder (Enum_sell, Enum_Exit, EveryLots,BidLine);
                                                  }
                                                  
          }Else
                  If(CurrentTime> ExitOnCloseMins/100)                                         
             {
                           If(MyRealMp>0)
                    {
                                           MyRealMp=MyRealMp-1;A_SendOrder(Enum_Sell,Enum_Exit,EveryLots,BidLine);
                                        }Else
                                        If(MyRealMp<0)
                                           {
                                              MyRealMp=MyRealMp+1;A_SendOrder(Enum_Buy,Enum_Exit,EveryLots,AskLine);
                                           }
            }
                        SetGlobalVar(0,MyRealMp);
            Commentary("實際倉位="+Text(MyRealMp));
            Commentary("當前時間="+Text(Q_LastTime));
        if(Q_LastTime >0.145000 and CurrentTime<0.150000)
      {
            A_SendOrder(Enum_Sell,Enum_Exit,1,Q_BidPrice);

        A_SendOrder(Enum_Buy,Enum_Exit,1,Q_AskPrice);
         }

End




//------------------------------------------------------------------------
// 編譯版本        GS2010.12.08
// 用戶版本        2012/09/10 11:16
// 版權所有        cotps.com
// 更改聲明        TradeBlazer Software保留對TradeBlazer平臺
//                        每一版本的TrabeBlazer公式修改和重寫的權利
//------------------------------------------------------------------------

 

有思路,想編寫各種指標公式,程序化交易模型,選股公式,預警公式的朋友

可聯系技術人員 QQ: 262069696  進行 有償 編寫!不貴!點擊查看價格!快三彩票开户

 


【字體: 】【打印文章】【查看評論

相關文章

    沒有相關內容