寫(xiě)了一個(gè)跨周期求日線MACD的副圖公式,歡迎溝通交流!
作者:開(kāi)拓者 TB 來(lái)源:cxh99.com 發(fā)布時(shí)間:2020年09月16日
-
咨詢(xún)內(nèi)容:
適用于日線以下的分鐘級(jí)別。
Params
? ? ? ? Numeric? ? Duan(12);? ? //短日周期
? ? ? ? Numeric? ? Chang(26);? ? //長(zhǎng)日周期
? ? ? ? Numeric? ? Jun(9);? ? //均值
Vars
? ? ? ? NumericSeries? ? DIFF;
? ? ? ? NumericSeries? ? DEA;
? ? ? ? NumericSeries? ? MACD;
? ? ? ? NumericSeries? ? i(0);? ? //運(yùn)行天數(shù)
? ? ? ? Numeric? ? x(1);? ? //臨時(shí)計(jì)算天數(shù)
? ? ? ? Numeric? ? y(0);? ? //臨時(shí)計(jì)算是哪根線收盤(pán)
? ? ? ? Numeric? ? z;? ? //計(jì)數(shù)器,越大越好
? ? ? ? Numeric? ? TempCum(0);
Begin
? ? ? ? If(TrueDate(0)<>TrueDate(1))? ? i=i+1;? ? //基數(shù)天數(shù)
? ? ? ? If(i<Chang+Jun)? ? Return;? ? //過(guò)濾前期數(shù)據(jù)不正確天數(shù)
? ? ? ? DIFF=AverageD(1,Duan)-AverageD(1,Chang);? ? //求當(dāng)前DIFF
? ? ? ? For z=0 To 10000{
? ? ? ? ? ? ? ? y=NthCon(TrueDate(z)<>TrueDate(z+1),x);? ? //求更換天數(shù)的[K]線位置,默認(rèn)從第一天開(kāi)始
? ? ? ? ? ? ? ? TempCum=TempCum+DIFF[y+1];? ? //臨時(shí)求和,前幾天的[DIFF]總和,不包括當(dāng)天
? ? ? ? ? ? ? ? x=x+1;? ? //天數(shù)增加一天
? ? ? ? ? ? ? ? If(x>=Jun)? ? Break;? ? //天數(shù)滿(mǎn)足,退出循環(huán)
? ? ? ? }
? ? ? ? DEA=(DIFF+TempCum)/Jun;? ? //臨時(shí)和+當(dāng)天最新值再平均
? ? ? ? MACD=DIFF-DEA;
? ? ? ? PlotNumeric("DIFF",DIFF,0,Red);
? ? ? ? PlotNumeric("DEA",DEA,0,Yellow);
? ? ? ? PlotNumeric("MACD",MACD);
? ? ? ? PlotNumeric("零線",0);??
? ? ? ?
End
//------------------------------------------------------------------------
// 編譯版本? ? ? ? GS2015.12.25
// 用戶(hù)版本? ? ? ? 2019/12/15 21:54:50
// 版權(quán)所有? ? ? ? jacyjie
// 更改聲明? ? ? ? TradeBlazer Software保留對(duì)TradeBlazer平臺(tái)
//? ? ? ? ? ? ? ? ? ? ? ? 每一版本的TradeBlazer公式修改和重寫(xiě)的權(quán)利
//------------------------------------------------------------------------
?
?來(lái)源:CXH99.COM
-
TB技術(shù)人員:
y=NthCon(TrueDate(z)<>TrueDate(z+1),x);? ? //求更換天數(shù)的[K]線位置,默認(rèn)從第一天開(kāi)始
錯(cuò)誤號(hào) W0201
?
-
TB客服:
本帖最后由 xianjie2048 于 2019-12-18 10:27 編輯
昨天太晚了,有點(diǎn)困。
? ? ? ? For z=0 To 10000{
? ? ? ? ? ? ? ? y=NthCon(TrueDate(z)<>TrueDate(z+1),x);? ? //求更換天數(shù)的[K]線位置,默認(rèn)從第一天開(kāi)始
? ? ? ? ? ? ? ? TempCum=TempCum+DIFF[y+1];? ? //臨時(shí)求和,前幾天的[DIFF]總和,不包括當(dāng)天
? ? ? ? ? ? ? ? x=x+1;? ? //天數(shù)增加一天
? ? ? ? ? ? ? ? If(x>=Jun)? ? Break;? ? //天數(shù)滿(mǎn)足,退出循環(huán)
? ? ? ? }
確實(shí)有錯(cuò)誤,但是對(duì)比了下,數(shù)據(jù)結(jié)果是對(duì)的。
我覺(jué)得寫(xiě)出來(lái)的程序有漏洞,但是又得到正確的結(jié)果,想不透,所以來(lái)論壇咨詢(xún)下。