人人爽天天爽夜夜爽qc-人人爽天天爽夜夜爽曰-人人天天爱天天做天天摸-人人天天夜夜-色网站在线-色网站在线看

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

請老師幫忙把文華跨周期引用模型改為TB公式 [開拓者 TB]

  • 咨詢內容: nopain老師,我之前一直使用文華的年費服務,考慮到TB在歷史回測方面的優勢,決定轉向TB。我想把文華的跨周期引用模型轉換成TB模型(1分鐘周期K線圖中引用30分鐘周期的DMI指標),但由于剛剛學習TB語言,對TB不了解,請老師幫忙修改,謝謝。
    1、文華模型
    (1)引用模型
    TR:=SUM(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),14);
    HD:=HIGH-REF(HIGH,1);
    LD:=REF(LOW,1)-LOW;
    DMP:=SUM(IFELSE(HD>0&&HD>LD,HD,0),14);
    DMM:=SUM(IFELSE(LD>0&&LD>HD,LD,0),14);
    PDI1:=DMP*100/TR;
    MDI1:=DMM*100/TR;
    ADX1:=MA(ABS(MDI1-PDI1)/(MDI1+PDI1)*100,6);
    (2)主模型
    #IMPORT[,MIN30,MYDHL33] AS VAR
    PDI:=VAR.PDI1;
    MDI:=VAR.MDI1;
    ADX:=VAR.ADX1;
    ADX>25&&ADX>REF(ADX,1)&&NOT(R3)&&DI>MDI&&DI>REF(PDI,1)&&MDI<REF(MDI,1),BK;//CCI上穿100,做多
    .....
    AUTOFILTER;

    2、通過學習TB帖子,
    http://bbs.tb18.net/forum.php?mo ... ge%3D1&tid=1996,
    我編寫了一個TB函數和一個TB公式,具體如下:
    (1)TransMinsDatab 函數
    //------------------------------------------------------------------------
    // 簡稱: TransMinsDatab
    // 名稱: TransMinsDatab
    // 類別: 用戶函數
    // 類型: 用戶函數
    // 輸出: 數值型
    //------------------------------------------------------------------------
    Params
            NumericSeries Price(1);
            Numeric nMinSet(5);
            Numeric MinsAgo(2);
    Vars
            NumericSeries barCnt;
            NumericSeries MinData;
            Numeric i;
            Numeric j;
            Numeric nIndex(0);
    Begin
            If(IntPart(Minute%nMinSet)==0)
            {
                    barCnt = 1;
            }Else
            {
                    barCnt = barCnt[1] + 1;
            }
            MinData = Price;
                   
            If(MinsAgo == 0)
            {
                    return MinData;
            }Else
            {
                    For i = 1 To MinsAgo
                    {
                            If( i == 1)
                            {        
                                    j = 0;
                            }Else
                            {
                                    j = j + BarCnt[j];                                
                            }
                            If (j > CurrentBar ) Return InvalidNumeric;
                            nIndex = nIndex + BarCnt[j];
                    }
                    Return MinData[nIndex];
            }
    End

    (2)根據文華代碼直接編譯過來的TB公式(名稱為ADX66)
    //------------------------------------------------------------------------
    // 簡稱: ADX66
    // 名稱: ADX66
    // 類別: 公式應用
    // 類型: 用戶應用
    //------------------------------------------------------------------------
    Params
    Numeric Length(14);
    Numeric ADXLength(6);
    Numeric Lots(1);
    Vars
    Numeric MyOpen;
    NumericSeries MyHigh;
    NumericSeries MyLow;
    NumericSeries MyClose;
    Numeric MyOpen1;
    NumericSeries MyHigh1;
    NumericSeries MyLow1;
    NumericSeries MyClose1;
    Numeric TR;
    Numeric HD;
    Numeric LD;
    Numeric DMP;
    Numeric DMM;
    NumericSeries PDI;
    NumericSeries MDI;
    Numeric i;
    NumericSeries CY;
    Numeric Value1;
    Numeric SumValue(0);
    NumericSeries ADX;
    Begin
    MyOpen1=DataConvert(Open,"min",30,"Open");
    MyHigh1=DataConvert(High,"min",30,"High");
    MyLow1=DataConvert(Low,"min",30,"Low");
    MyClose1=DataConvert(Close,"min",30,"Close");
    //ADX
    TR=Summation(MAX(MAX((MyHigh1-MyLow1),ABS(MyHigh1-MyClose1[1])),ABS(MyLow1-MyClose1[1])),Length);
    HD=MyHigh1-MyHigh1[1];
    LD=MyLow1[1]-MyLow1;
    DMP=Summation(IIF(HD>0&&HD>LD,HD,0),Length);
    DMM=Summation(IIF(LD>0&&LD>HD,LD,0),Length);
    PDI=DMP*100/TR;
    MDI=DMM*100/TR;
    CY=(ABS(MDI-PDI)/(MDI+PDI))*100;
    For i=ADXLength-1 DownTo 0
    {
    Value1=TransMinsDatab(CY,30,i);
    SumValue=SumValue+Value1;
    }
    ADX=SumValue/ADXLength;
    PlotNumeric("DI",PDI);
    PlotNumeric("MDI",MDI);
    PlotNumeric("ADX",ADX);
    If(ADX>25&&ADX>ADX[1]&&PDI>MDI&&PDI>PDI[1]&&MDI<MDI[1])
    {
    Buy(Lots,OPEN);
    }  
    End


    在超級圖標插入ADX公式,好多地方顯示ADX=-1.#J,無法顯示正常的ADX值;PDI和MDI也顯示異常(顯示為零)。
    請TB老師幫忙修改,謝謝。其中,值得注意是 ADX、PDI和MDI需要定義成有序列的回溯參數,才能用于回溯。
    此外,我也注意到TB論壇里有關于DMI的參考模型
    http://bbs.tb18.net/forum.php?mo ... 7&highlight=DMI ,
    由于DirMovement函數的設置返回值為布爾型,我不知道怎么用于跨周期引用的公式。如果老師無法修改我直接從文華編譯的TB公式,那就請幫忙以TB帖子的DMI參考模型為基礎,直接改為我想要的跨周期引用公式。再次表示感謝。

     

  • TB技術人員: 不好意思,剛才文華模型中主模型中“ADX>25&&ADX>REF(ADX,1)&&NOT(R3)&& PDI>MDI&& PDI>REF(PDI,1)&& MDI<REF(MDI,1)BK;//CCI上穿100,做多” 在網頁中顯示有問題。

     

  • TB客服: 不好意思,剛才文華模型中主模型中“ADX>25&&ADX>REF(ADX,1)&&NOT(R3)&& PDI>MDI&& PDI>REF(PDI,1)&& MDI<REF(MDI,1),BK;” 在網頁中顯示有問題,
    應該為“ADX>25&&ADX>REF(ADX,1)&&NOT(R3)&& PDI>MDI&& PDI>REF(PDI,1)&& MDI<REF(MDI,1),BK;”。同時,ADX66公式中的”PlotNumeric("PDI",PDI);“在網頁中顯示出問題,應該為”PlotNumeric("PDI",PDI);“。

     

  • 網友回復: 頂起,請TB老師幫忙解答,謝謝!

     

  • 網友回復: 再次請TB老師抽空指導修改,非常感謝。

 

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

可聯系技術人員 QQ: 1145508240  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 日本xx网站 | 狠狠色噜噜狠狠狠狠狠色综合久久 | 成人超污免费网站在线看 | 亚洲超大尺度激情啪啪人体 | 欧美日韩精品在线 | 欧美亚洲中日韩中文字幕在线 | 天堂网色 | 亚洲一级片网站 | 午夜影视体验区 | 小明看片 | 精品x8x8视频 | 成人午夜看片 | 亚洲欧美一区二区三区国产精品 | 日韩毛片在线免费观看 | 一级a级毛片 | 色之综合网 | 国产在线一区二区 | 国产精品久久久久久久久久直 | 五月婷婷视频在线 | 永久在线| 亚洲狠狠婷婷综合久久久图片 | 国产 麻豆 欧美亚洲综合久久 | 日本高清中文字幕一区二区三区 | 欧美高清成人videosex | 日本成人午夜 | 国产一级黄 | 国产91网站在线观看免费 | 性视频在线 | 日本高清网站 | 亚洲性片| 国产又爽又黄又不遮挡视频99 | 福利免费观看 | 国产成人无精品久久久久国语 | 伊人网中文字幕 | 在线观看播放视频www | 欧洲真实呦女网站 | 免费一级a毛片在线搐放正片 | 综合欧美日韩 | 午夜爱爱影院 | 亚洲操片 | 精品欧美一区二区三区 |