XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX;visibility:hidden">

精選專欄

轉折指標與函數(Pivot high、Pivot Low)簡介

「轉折」講起來帶有主觀成分,MC裡對轉折的界定是,以轉折高點為例(指標Pivot High)就是該K高點比左邊N根K棒及右邊N根K棒的高點都高(左右的N值可一樣或設不同),如下圖假設N=3所示:

figure-1

 

到這裡,敏感的讀者可能會起疑,在即時行情(real time)觀點下「比右邊3根K棒高點都高」不就等同於是在跟未來比較嗎?這講法算對也算不對,其實MC是用事後觀點的方法在處裡這個難題,以上圖為例,當即時行情來到4號K棒時確立1號K棒符合左三右三最高的條件時,才回頭在1號K棒劃出指標(藍色十字)。同理,如果是以轉折當作交易訊號,空單也會在4號K棒確立符合條件後以Next Bar進場(如下圖以MC內建的「Pivot Extension SE」訊號進場):

figure-2

 

以上是運用轉折(Pivot、Swing)這類指標或函式要先有的基本觀念。

MC內建的主要轉折指標與函式:

指標

指標

功能

Pivot High

標示轉折高點

Pivot Low

標示轉折低點

函式

函式

功能

Pivot

計算轉折,以下函示都是以Pivot為基礎衍生出來的

PivotHighVS

計算轉折高點價位

PivotHighVSBar

計算回推轉折高點位置(N根K棒前),值=-1表示沒有符合轉折條件,值=N代表N根K棒前有符合轉折

PivotLowVS

計算轉折低點價位

PivotLowVSBar

計算回推轉折低點位置(N根K棒前),值=-1表示沒有符合轉折條件,值=N代表N根K棒前有符合轉折

Swing High

同PivotHighVS,計算轉折高點價位,差別在輸入Input稍有不同。

Swing Low

同PivotLowVS,計算轉折低點價位,差別在輸入Input稍有不同。

基本上所有轉折指標或函式都源自於Pivot這個函式,該函式回傳2個值:Var0(轉折價位)及Var1(回推轉折的那根K棒位置),如果沒有符合轉折條件,兩者皆回傳回值-1,有興趣的讀者可以打開該函式原始碼深入研究。附帶一提,另外兩個轉折相關的函式「Swing High」與「Swing Low」,其實與「PivotHighVS」及「PivotLowVS」是相同,差別只是Swing系列的函數,在比較轉折是左右兩邊一樣K棒數去比,也就是參數不再分「LeftStrength」或「RightStrength」,統一以一個「Strength」來表示。

我們先從簡單又實用的Pivot High指標為例,來認識轉折高指標是怎麼畫出來的。

Pivot High需輸入三個變數:

參數

預設值

說明

Price

High

可輸入開(Open)、高(High)、低(Low)、收(Close)等,我們要算轉折高,採用High。

LeftStrength

3

向前(左)比較N根K棒,預設值3,表示轉折高比前面3根K棒的高都要高。

RightStrength

3

向後(右)比較N根K棒,預設值3,表示轉折高比後面3根K棒的高都要高。

MC內建Pivot High函式語法:
==============================================
inputs: Price( High ), LeftStrength( 3 ), RightStrength( 3 ) ;

condition1 = PivotHighVSBar( 1, Price, LeftStrength, RightStrength, RightStrength + 1 ) <> -1 ;
if condition1
 then
      begin
      Plot1[RightStrength]( High[RightStrength], "PivotHi" ) ;
      Alert ;
      end
else
   NoPlot( 1 ) ;
===============================================

其中,以函式PivotHighVSBar判斷有無符合轉折高定義,傳回值不等於-1就是有符合。接下來運用到一個小技巧,以中括號”[]”方式(往回N根K棒取值或做動作),在確認符合轉折條件後,回頭把指標畫出來,至於回頭幾根呢?很簡單,我們轉折高是向右比較”RightStrength”根K棒,所以就一樣取”RightStrength”根回頭畫線並取值,如下:

Plot1[RightStrength]( High[RightStrength], "PivotHi" ) ;

如果是要自行在策略或指標去抓轉折高的值或是位置,就是用「PivotHighVS」及「PivotHighVSBar」這兩個函式:

PivotHighVS(Instance, Price, LeftStrength, RightStrength, Len):回傳轉折高價位。

PivotHighVSBar(Instance, Price, LeftStrength, RightStrength, Len):回傳轉折高位置,以轉折條件確認後回頭N根K棒的方式表達。

參數說明:

參數

說明

Instance

值為1,計算最近1個轉折高

Price

可輸入開(Open)、高(High)、低(Low)、收(Close)等,我們要算轉折高,採用High。

LeftStrength

向前(左)比較N根K棒,值為3,表示轉折高比前面3根K棒的高都要高。

RightStrength

向後(右)比較N根K棒,值為3,表示轉折高比後面3根K棒的高都要高。

Len

整個計算需考慮多少K棒數,建議以RightStrength+1帶入

 

實例運用:

例如,假設要以最近一個轉折高(比左三、右三高)做為空單停損點,寫法如下:

[IntrabarOrderGeneration = false]

if PivotHighVS(1,high,3,3,4)<>-1 then
Value1= PivotHighVS(1,high,3,3,4);

If marketposition=-1 then buytocover("Pivot SX") next bar at value1 stop;

效果如下,以頸線壓力支撐作為停損點正也是以類似寫法來表達。
 

 


期貨線上開戶 期貨營業員專區

/統一期貨相關連結/

統一期貨FB統一期貨YouTube統一期貨LINE統一期貨IG