COCO研究院

 找回密碼
 註冊
搜索
查看: 1604|回復: 1

求教,怎麼樣把過去特定時間點累加到當前時間的周期數作...

[複製鏈接]
發表於 22-9-8 11:10 | 顯示全部樓層 |閱讀模式
本帖最後由 qingxinguayu 於 22-9-8 11:17 編輯

下面這個公式編譯能通過,使用時出現提示"試圖引用未來數據-1"的錯誤消息.想不出可以修改的辦法,希望大神們出手相助,指點迷津.衷心感謝!
inputs:
        Price((H+L)/2),//價格類型
        StartDate_YYMMDD(0),//開始日期
        StartTime_HHMM(0),//開始時間
        Color(Yellow),//顏色
        ExtRight(true);//延伸選項

variables:
        var0(iff(StartDate_YYMMDD<500000,StartDate_YYMMDD+1000000,
        StartDate_YYMMDD)),//變量0初始值設為符合開始日期的二選一條件值
        var1(0),//變量1初始值設為0
        var2(0),//變量2初始值設為0
        var3(0),//變量3初始值設為0
        var4(0);//變量4初始值設為0
        
if Date = StartDate_YYMMDD and Time = StartTime_HHMM then value1 = currentbar ;//如果日期為開始日期並且時間為開始時間 那麼將內置變量1設置為當前K線編號
value2=currentbar - value1; //內置變量2等於當前K線編號減去內置變量1

if var4=0 then //如果變量4為0 那麼
        begin //開始
        condition1=var0=1000000 and LastBarOnChart;//條件1等於變量0等於1000000 並且當前K線為圖形裡最後一根
        if condition1 then // 如果條件1成立 那麼
                begin //開始
                var1=LinearRegValue(Price,value2,0);//變量1的線性回歸值
                var2=LinearRegValue(Price,value2,value2-1);//變量2的線性回歸值
                var3=TL_New(Date[value2-1],Time[value2-1],var2,Date,Time,
                var1);//趨勢線變量1和變量2組成的趨勢線
                var4=1;//將變量4賦值為1
                end //結束
        else //否則
        begin //開始
        condition1=Date=var0 and (Time=StartTime_HHMM or StartTime_HHMM=0);//條件1等於現在日期等於變量0並且(時間等於開始時間或者開始時間參數為零)
        if condition1 then //如果條件1成立 那麼
                begin //開始
                var1=LinearRegValue(Price,value2,0);//變量1的線性回歸值
                var2=LinearRegValue(Price,value2,value2-1);//變量2的線性回歸值
                var3=TL_New(Date[value2-1],Time[value2-1],var2,Date,Time,
                var1);//趨勢線變量1和變量2組成的趨勢線
                var4=2;//將變量4賦值為2
                end;//結束
        end;//結束
        condition1=var4=1 or var4=2;//條件1為(var4等於1或者var4等於2)的任意一個值
        if condition1 then //如果條件1成立 那麼
                begin //開始
                TL_SetColor(var3,Color); //設置變量3的趨勢線顏色
                TL_SetExtLeft(var3,false);//設置變量3的趨勢線向左延伸為否
                if ExtRight then //如果向右延伸成立 那麼
                        TL_SetExtRight(var3,true) //設置變量3的趨勢線向右邊延伸為真
                else //否則
                        TL_SetExtRight(var3,false);//設置變量3的趨勢線右延伸為否
                end;//結束
        end // 結束
else if var4=1 then //否則 如果變量4為1 那麼
        begin //開始
        var1=LinearRegValue(Price,value2,0); //變量1的線性回歸值
        var2=LinearRegValue(Price,value2,value2-1);//變量2的線性回歸值
        TL_SetBegin(var3,Date[value2-1],Time[value2-1],var2);//設置變量3的趨勢線的起點
        TL_SetEnd(var3,Date,Time,var1);//設置變量3的趨勢線的終點
        end;//結束


 樓主| 發表於 22-9-15 09:03 | 顯示全部樓層
已經解決,謝謝兄弟姐妹們.
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-12-22 11:21

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |