人人爽天天爽夜夜爽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  點擊這里給我發消息進行 有償 編寫!不貴!點擊查看價格!


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

相關文章

    沒有相關內容
主站蜘蛛池模板: 老司机天堂影院 | 男女羞羞免费视频 | 色噜噜狠狠色综合免费视频 | 日本福利写真福利视频 | 中文字幕日韩三级 | 日韩三级欧美 | 在线免费观看a级片 | 亚洲人成绝费网站色ww | 奇米影视亚洲色图 | 一级做a爱片性色毛片武则天五则 | 影音先锋第一页 | 国产xxxx做受性欧美88 | 国产激情在线 | 一个人看的视频www在线看 | 伊色综合久久之综合久久 | 99re在线精品视频免费 | 天天干天天干天天干天天 | 久久亚洲一级毛片 | 人人干人人干 | 天天干天天夜 | 女色专区 | 一级一片 | 日韩高清一区二区三区五区七区 | 国产福利小视频 | 视频久久精品 | www.av小说| 日日操综合 | 韩国日本三级在线播放 | 动漫成年美女黄漫网站小视频 | 亚洲一区免费在线观看 | 精品久久久久免费极品大片 | 亚洲日本韩国在线 | 91精品视频在线观看免费 | 波多野结衣在线中文字幕 | aaaa欧美高清免费 | 激情六月综合 | 日韩综合在线视频 | 日本簧片在线观看 | 射黑丝袜 | 成人午夜在线 | 三级全黄的全黄三级三级播放 |