<address id="zhfln"></address>

    <form id="zhfln"></form>
    <address id="zhfln"><address id="zhfln"><listing id="zhfln"></listing></address></address>

        <form id="zhfln"><nobr id="zhfln"><progress id="zhfln"></progress></nobr></form>
        <sub id="zhfln"></sub>

        <sub id="zhfln"></sub>

          <form id="zhfln"><nobr id="zhfln"><meter id="zhfln"></meter></nobr></form>

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

          開拓者求N天前的收盤價closD(N)原理,源碼[開拓者公式]

          • 咨詢內容: //------------------------------------------------------------------------
            // 簡稱: CloseD
            // 名稱: 求N天前的收盤價
            // 類別: 用戶函數
            // 類型: 內建函數
            // 輸出: 數值型
            //------------------------------------------------------------------------

            Params
                    Numeric daysAgo(2);
            Vars
                    NumericSeries barCnt;
                    NumericSeries dayClose;
                    Numeric i;
                    Numeric j;
                    Numeric nIndex(0);
                    Numeric CBIndex;
            Begin
                    CBIndex = CurrentBar;
                    If(CBIndex == 0 || Date != Date[1])
                    {
                            barCnt = 1;
                    }Else
                    {
                            barCnt = barCnt + 1;
                    }
                    dayClose = Close;
                           
                    If(daysAgo == 0)
                    {
                            return dayClose;//程序化交易 www.planetbokep.com
                    }Else
                    {
                            For i = 1 To daysAgo
                            {
                                    If( i == 1)
                                    {       
                                            j = 0;
                                    }Else
                                    {
                                            j = j + BarCnt[j];                               
                                    }
                                    If (j > CBIndex )
                                            Return InvalidNumeric;
                                    nIndex = nIndex + BarCnt[j];
                            }
                            Return dayClose[nIndex];
                    }
            End

            //------------------------------------------------------------------------
            // 編譯版本        GS2010.12.08
            // 版權所有        TradeBlazer Software 2003-2010
            // 更改聲明        TradeBlazer Software保留對TradeBlazer平
            //                        臺每一版本的TradeBlazer公式修改和重寫的權利
            //------------------------------------------------------------------------

             

          • TB技術人員:
            BarCnt記錄的是從當天第一根K線到當前K線的K線數
            所以回溯BarCnt就可得到前一天最后一K的收盤價,也就是CloseD(1)
            當回溯天數大于1,比如2:
            1. For i = 1 To daysAgo

            2.                 {

            3.                         If( i == 1)

            4.                         {      

            5.                                 j = 0;

            6.                         }Else

            7.                         {

            8.                                 j = j + BarCnt[j];                              

            9.                         }

            10.                         If (j > CBIndex )

            11.                                 Return InvalidNumeric;

            12.                         nIndex = nIndex + BarCnt[j];
            復制代碼i = 1時,j=0,nIndex = 0 + BarCnt[0] = BarCnt(cxh99.com),也就是回溯到前一天的最后一K;
            i = 2,j = 0 + BarCnt[0] = BarCnt
            nIndex = BarCnt+BarCnt[BarCnt]
            也就是回溯到前一天的前一天的最后一K;

            OK,以此類推。

             

          • TB客服: 謝謝樓上,有一點懂了;
            但是還有一點不明白,barCnt是NumericSeries,也就是序列,但是barCnt的每個元素并沒有初始賦值呀,真是奇怪了。
            比如:nIndex = BarCnt+BarCnt[BarCnt];
            BarCnt[BarCnt]沒有初始賦值,就使用,不會出錯嗎?

             

          • 網友回復: 比如以下代碼:
            Begin
                    CBIndex = CurrentBar;
                    If(CBIndex == 0 || Date != Date[1])
                    {
                            barCnt = 1;
                    }Else
                    {
                            barCnt = barCnt + 1;
                    }//www.planetbokep.com

            如果第一次執行Else里面的代碼,barCnt = barCnt + 1;而barCnt沒有初始值,不會出錯嗎?

             

          • 網友回復: 程序是從圖上第一根K線開始執行的

            此時CBIndex == 0成立,barCnt = 1,沒有問題

           

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

          可聯系技術人員 QQ: 262069696  點擊在線交流進行 有償 編寫!不貴!點擊查看價格!

           


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

          相關文章

            沒有相關內容
            人妻专区免费视频,俄罗斯啪啪到高潮喷水,国色天香社区直播在线观看
            <address id="zhfln"></address>

            <form id="zhfln"></form>
            <address id="zhfln"><address id="zhfln"><listing id="zhfln"></listing></address></address>

                <form id="zhfln"><nobr id="zhfln"><progress id="zhfln"></progress></nobr></form>
                <sub id="zhfln"></sub>

                <sub id="zhfln"></sub>

                  <form id="zhfln"><nobr id="zhfln"><meter id="zhfln"></meter></nobr></form>