站內廣告

自訂函數(anAverageD):計算全日盤中指定時間收盤價平均

安哥

怎麼把純日盤(日K)上的均線畫到全日盤(300分K)上?當時是用Data2的方式解決,但很快覺得引用Data2實在不是很理想。 本函數最大目的,是不使用Data2、直接讀取全日盤中某根K棒數值來計算。加以修改,應不只能計算平均、畫出均線。

20250510 本函數已有更新版

怎麼把純日盤(日K)上的均線畫到全日盤(300分K)上?當時是用Data2的方式解決,但很快覺得引用Data2實在不是很理想。

首先是圖表變得很難看,畫面上多了一塊沒什麼實際用途又礙眼的區域。再來是程式中多了of Data2,維護變得很麻煩,又容易弄錯。而且計算日均線的K棒,不就在全日盤上,為什麼不能直接拿來計算,還得繞到Data2?

我要做的,不就只是把全日盤中,13:45那根K棒的收盤價收集起來,然後就可以畫出均線了?哈哈,事情還真的不是XX想的那麼簡單。看起來應該很容易搞定,但畫出來的均線就是不對...。

前幾天,社團聊天室有同學提到Data2,才讓我又想起這擱置超過半年的難題。重啟測試,用以下程式讀取13:45那根K棒的收盤價,再丟到Average計算平均,但還是不行:

=====================================
IF Time=1345 Then Begin
  Value1=Close;
End;
=====================================

試著修改均線週期,有重大發現:3MA以上都不對,2MA竟然可以!MultiCharts是抓到什麼?農曆7月看到XXX?

有興趣的同學,可以把Value1給Print出來看看。

知道關鍵原因,接下來就真的容易了。終於完成的自訂函數如下:

=====================================
//anAverageD-函數
//anAverageD-類別:時序
//anAverageD-計算全日盤中指定時間收盤價平均
//anAverageD-該指定時間必須為某根K棒結束時間(如:240分K可以計算1245收盤價平均,但300分K不行)
//anAverageD-Len:取近幾根K棒數(均線週期);XK:圖表使用週期,如300分K
//anAverageD-20230825

Inputs:PriceValue(numericseries),Len(numericsimple),XK(numericsimple);

IF Mod(5*60,XK)=0 Then Begin  //計算日盤K棒數
  Value1=IntPortion(5*60/XK);
END Else Begin
  Value1=IntPortion(5*60/XK)+1;
End;

IF Mod(14*60,XK)=0 Then Begin  //計算夜盤K棒數
  Value2=IntPortion(14*60/XK);
END Else Begin
  Value2=IntPortion(14*60/XK)+1;
End;

Value3=Value1+Value2;

Value4=0;
For Value91=0 To (Len-1)*Value3 Begin
  IF Mod(Value91,Value3)=0 Then Begin
    Value4=Value4+PriceValue[Value91];  //計算總和
  End;
End;

anAverageD=Value4/Len;  //計算平均並回傳
=====================================

指標可以這樣寫:

=====================================
Inputs:Len1(5),Len2(10),XK(300);

IF Time=1345 Then Begin
  Value1=anAverageD(Close,Len1,XK);
  Value2=anAverageD(Close,Len2,XK);
End;

Plot1(Value1,"AVG_1");
Plot2(Value2,"AVG_2");  
=====================================

本函數最大目的,是不使用Data2、直接讀取全日盤中某根K棒數值來計算。加以修改,應不只能計算平均、畫出均線。

僅在我自己使用的週期測試,不保證也不負責程式正確性。有興趣的同學請自行取用,不必告知,也不必取得同意。但若有優化,希望能比照公布、分享。

 

本文內容僅供參考,無任何買賣建議,投資人應謹慎評估,風險自負。

你可能感興趣

    精選文章

    更多
    低軌衛星不同調,昇達科跌停,華通續漲,當心!SpaceX軍方訂單80億藏玄機
    費半跌3.5%台股開低!MSCI權重生效最後一盤爆量上拉189點,5均驚險保住!
    國巨、聯電、南電、欣興同框比拼,用壓力支撐表,看懂誰還能漲!
    輝達財報過關台股續漲但博通財報下周四登場,財報好但股價卻跌12%,這次還會重演?
    大立光獵地成亮點,光寶科創歷史高,被動元件華新科、信昌電齊反攻,下周盤勢重點
    為什麼你的股票沒跌那麼多,大盤卻說崩了?因為大盤不是你以為的大盤。