MultiCharts初體驗-指標撰寫

更新於 發佈於 閱讀時間約 6 分鐘
  • 文內如有投資理財相關經驗、知識、資訊等內容,皆為創作者個人分享行為。
  • 有價證券、指數與衍生性商品之數據資料,僅供輔助說明之用,不代表創作者投資決策之推介及建議。
  • 閱讀同時,請審慎思考自身條件及自我決策,並應有為決策負責之事前認知。
  • 方格子希望您能從這些分享內容汲取投資養份,養成獨立思考的能力、判斷、行動,成就最適合您的投資理財模式。

在軟體工程中強調架構的延展性、維護性及重用性,將運算邏輯先寫成函式就是為了提高重用及維護,軟體界在這樣的發展下,開發出許多通用的套件,使得許多程式開發者可以利用套件來提升開發速度及穩定度,就如同現在的微波食品,想要煮一桌菜,不用自己從買食材開始、處理食材、料理食物、擺盤上桌⋯⋯等步驟,只需將買來的調理包弄熱,擺盤就可上桌了,在前篇寫的函式就可想像類似製作這類的調理包,日後只要拿來搭配使用,就可以寫出各式的指標或策略。

接下來就來將連續過高點或連續過低點的指標寫出來,讓MC的圖表視窗可以拿來使用,首先在PowerLanguage Editor中新增一個指標類型的空白文件,新增的方式與函式類似,只是在類型的視窗選擇「指標」。

新增指標

新增指標

指標名稱就取名為「_ContinueBreakOut」。

為指標命名

為指標命名

在指標的部份,也可以設定輸入的參數,與函式不同點在於函式是指定參數名及參數型態,而在指標是指定參數名及參數值,為了讓指標的使用情境可以更多元,在輸入參數的部份設計成三個參數,說明如下:

  1. BarCount:
    指定連續創高點或連續創低點的K棒數,使用者在日後使用時,可以依據自己的習慣改變後,觀察行情。
  2. Direction:
    要標示的方向,1為標示創高、-1為標示創低、0為二者都標示,讀者可以回想上一篇的參數,在撰寫時,就先預留了Direction的參數,在同一個函式中,就可以指定要判斷高點還是低點。
  3. Offset:
    當連續創高時,可指定標示的位置是在該根K棒高點往上加多少點數,連續創低時,可指定標示的位置是在該根K棒低點往下減多少點數,這樣的設計可以避免標示圓點剛好標示在最高價或最低價而影響到K線的觀察。
Inputs:BarCount(3), Direction(0), Offset(3);
輸入參數

輸入參數

接下來在指標的程式中,也需要使用到幾個變數,其說明如下:

  1. NeedDraw:
    用來存放此根K棒是否需要標示,當有連續創高點或連續創低點時,就可將此值改變成True,讓指標將其標示在K線圖上。
  2. Color:
    用來存放標示圓點的顏色,在程式中判斷連續創高點或連續創低點時,將標示點用不同顏色來標示。
  3. PlotValue:
    在計算過程中,創高點則往上加Offset的點數,創低點則往下減Offset的點數,為了讓程式的可讀性提高,則利用此變數來統一存放要標示的位置。
  4. UpColor:
    指定創高點的標示顏色。
  5. DownColor:
    指定創低點的標示顏色。
Variables:NeedDraw(False), Color(White), PlotValue(0), UpColor(Red), DownColor(Green);
程式中使用的變數

程式中使用的變數

調理包熱好了,餐具也準備好了,接下來進行擺盤後,就可以上桌了,讀者在剛接觸到程式設計時,也許無法一次就將這些變數完整設計出來,可以在用到時,再宣告就好,隨著寫作的次數增加,就會越來越熟練。

NeedDraw = False;

If Direction >= 0 And _ContinueBreakOut(BarCount, 1) Then
Begin
Color = UpColor;
PlotValue = High + Offset;
NeedDraw = True;
End;

If Direction <= 0 And _ContinueBreakOut(BarCount, -1) Then
Begin
Color = DownColor;
PlotValue = Low - Offset;
NeedDraw = True;
End;

If NeedDraw Then
Plot1(PlotValue, "", Color);
標示指標標示點

標示指標標示點

在指標撰寫時,先將NeedDraw設為False(即預設為沒有創高或創低),接下來,就要使用買來的調理包來上菜(誤,是已寫好的判斷函式),首先,先判斷是否有連續創高點,在此要有二個判斷式都成立,才會標示,Direction >= 0,用來決定是否要判斷行情連續創高點,在這裹使用個小技巧,使用Direction >= 0,讓使用者可以使用0或1來畫創高點(可參閱輸入參數說明,1表示只畫創高、0表示創高與創低均畫),另外使用我們已寫好的判斷函式_ContinueBreakOut,若回傳True即代表本根K棒是創新高。當二者都成立時,就將要標示的顏色(Color = UpColor)、標示的位置(PlotValue = High + Offset)並將此根K標示為需要標示(NeedDraw = True);連續創低點的邏輯與此類似,只是將其反過來,讓顏色及位置符合標示低點的設定。

最後使用Plot1這個內建函式來將標示點畫出,在這使用了NeedDraw來判斷是否需要畫出標示點,至此已將指標撰寫好,可以加入圖表視窗中使用。

在桌角遇到MultiCharts文寫到如何新增指標,讀者現在就可將指標顯示在K線圖上。

在指標的預設類型為「線條圖」,讀者可以將此類型變更為「點狀圖」這可以讓指標將標示點標示為點狀而非如均線般的線條,選完後,可勾選左下角的「設成預設值」即可將此指標的預設值設定為「點狀圖」,下次再使用時,就不需再手動調整。

設為點狀圖,並勾選設為預設值

設為點狀圖,並勾選設為預設值

按下確定後,即可將指標標示在行情上,但讀者會發現,為什麼不是如同均線一般標示在K線的圖表中,而是如成交量一樣,新增在下方成為一個新圖表,這是因MC的預設都是新增一個副圖。

標示在獨立的圖表區

標示在獨立的圖表區

此時,可以透過設定指標的方式,將圖移至K線圖,在設定的「屬性」頁籤可看到「副圖」的選項,將此指標的副圖選至「副圖#1」,然後一樣勾選「設成預設值」即可將其移至K線圖的位置。


將指標移至K線圖

將指標移至K線圖

raw-image

雖然已移至K線圖所在的區塊,但標示圖太小,不容易看,此時可以再透過設定的方式,增加其寬度,就可讓標示的點變大。

增加點狀圖寬度

增加點狀圖寬度

至此,讀者有沒有覺得自己突然得到神丹,功力立馬大增數萬年,已經可以開發自己的指標並且標示在線圖上,指標是交易訊號寫作靈感的來源,透過圖表的判斷,歸納出自己的交易訊號。




avatar-img
26會員
55內容數
金融市場入門新手所必知的基本知識
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
股市觀察家的沙龍 的其他內容
廣告常說:「男人過了四十歲,只剩一張嘴。」,連續二天的話當年後,要開始進入程式交易的主題,雖然前文描述是使用TradeStation為開發平台,但後來TS已轉為美國國內券商使用,在台灣MultiChart(以下簡稱MC)已成為主流的平台,雖然在使用上還是有許多雷區要避開,但平心而論,這平台算是程式初
安裝好券商版的MultiCharts(以下簡稱MC)後,可在桌面上看到四個ICON,在筆者依初學者使用的頻率,由左至右排列,分別是MC主程式(MultiCharts 64)、MC程式編輯器(MultiCharts64 PowerLanguage Editor)、MC最佳化結果檢視器(Mult
在工作室成立之初,簡直像神農嘗百草般地把各式各樣的技術指標拿來組合回測,試圖找出最佳的技標組合,後再進行策略參數的最佳化,這方式雖然可以找出回測期間很好的策略,但是一放入回測區間外的資料後,策略的績效絕大部份都是往下掉的,每個策略都是花費了一天以上的最佳化時間,好不容易找到奇妙的賺錢參數,可以上線自
最近因好奇目前程式交易的市場發展到什麼程度而報名了期貨工會開的程式交易課程,上課時看到一群積極想要加入程式交易領域的同學們,讓筆者回想到2008年筆者與一群志同道合的朋友,組成了一個程式交易工作室,一群人在三房二廳的公寓佈置了程式交易的辦公室,每天早上看盤、監控程式執行、寫交易訊號,下午
廣告常說:「男人過了四十歲,只剩一張嘴。」,連續二天的話當年後,要開始進入程式交易的主題,雖然前文描述是使用TradeStation為開發平台,但後來TS已轉為美國國內券商使用,在台灣MultiChart(以下簡稱MC)已成為主流的平台,雖然在使用上還是有許多雷區要避開,但平心而論,這平台算是程式初
安裝好券商版的MultiCharts(以下簡稱MC)後,可在桌面上看到四個ICON,在筆者依初學者使用的頻率,由左至右排列,分別是MC主程式(MultiCharts 64)、MC程式編輯器(MultiCharts64 PowerLanguage Editor)、MC最佳化結果檢視器(Mult
在工作室成立之初,簡直像神農嘗百草般地把各式各樣的技術指標拿來組合回測,試圖找出最佳的技標組合,後再進行策略參數的最佳化,這方式雖然可以找出回測期間很好的策略,但是一放入回測區間外的資料後,策略的績效絕大部份都是往下掉的,每個策略都是花費了一天以上的最佳化時間,好不容易找到奇妙的賺錢參數,可以上線自
最近因好奇目前程式交易的市場發展到什麼程度而報名了期貨工會開的程式交易課程,上課時看到一群積極想要加入程式交易領域的同學們,讓筆者回想到2008年筆者與一群志同道合的朋友,組成了一個程式交易工作室,一群人在三房二廳的公寓佈置了程式交易的辦公室,每天早上看盤、監控程式執行、寫交易訊號,下午
你可能也想看
Google News 追蹤
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本策略採用5、30分K的支撐與壓力進行突破買進與跌破賣出策略,透過盤中的量能變化進行買賣操作策略,該指標能夠真實地反映出價格的波動情況,並且可以靈活地調整參數進行進出場操作。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作
Thumbnail
這篇是給初學技術分析者的建議,覺得去蕪存菁,最簡潔有效的東西。 1.認識什麼是K線,開高低收,成交量。 2.知道均線與均量的數學意義。 3.學習簡單的走勢型態,比如W底M頭,切線,跳空缺口。 以上3點就足夠了,不管基於什麼說法想法理由,都不要花時間去學任何其他指標。
Thumbnail
技術指標源自統計學原理,反映市場變化的概率分佈,而非預測工具。本文了解指標背後邏輯有利活學活用,甚至自行改良創新。
Thumbnail
這篇文章將分享作者在量化交易中的一些心得和經驗,包括使用線性表示商品未來合理價格、避免以單一指標決定交易等。透過這些觀點,讀者可以獲得更多對量化交易的理解。
Thumbnail
趨勢線1-2-3策略利用趨勢和轉折元素,通過線圖可視化關鍵點。可對策略做變換,藉此了解市場動能,並設置動態停損線。策略風險在於進場停損需確實,且可能因為提前出場而少賺。因對少賺風險,可以藉由一些停損點設置方式來改善績效。
Thumbnail
本文章介紹了股市中常用的技術指標,如相對強弱指標(RSI)、隨機指標(KD)、移動平均線(MA)、動力指標(MTM)、指數平滑異同移動平均線(MACD)、寶塔線。透過這些指標,讓投資者能夠更好地瞭解股票的買賣力道、價格趨勢以及逆勢操作的時機。
Thumbnail
在上一篇中,我們在模型探討隨機截距交叉延宕在Extension 3:Multiple indicators定義。本文為實作部分,將說明Multiple indicators的依序四個步驟的Mplus語法。 ,
Thumbnail
可能包含敏感內容
所有的K棒都是真真實實用資金砸出來的,因此去看懂K棒的最高點、最低點、開盤價與收盤價很重要。 技術分析不能一成不變,要隨著趨勢來畫線。使用不同的週期來畫線,短線操作者(採用日K棒即可),因為我們主要是做選擇權,期貨則是需要更長的週期來看。 技術分析的兩大流派就是逆勢交易與順勢
Thumbnail
一般常見的時間架構分成三個:趨勢級別、分析級別、進場級別。 趨勢級別 週線 or 日線,目的是為了確認整體市場的方向,以及關鍵流動性區域(支撐、壓力位) 分析級別 4H or 1H,目的是確認市場當前方向、公允價值缺口、訂單塊、流動性區域、高期望值交易區域,需要花較多時間來分析。 進場級別
Thumbnail
這篇來淺談Multicharts和XQ的基本差異 基本知識 在講差異前,先讓大家知道,程式交易或是量化分析的軟體,其實是有很多選擇的。 當然,每種選擇會有不同的上手難度,以及費用。 通常越底層的語言,上手難度會越難,相對的,靈活性也會比較高。 反之,越高階的語言,上手難度越低,但靈活度
Thumbnail
隨著理財資訊的普及,越來越多台灣人不再將資產侷限於台股,而是將視野拓展到國際市場。特別是美國市場,其豐富的理財選擇,讓不少人開始思考將資金配置於海外市場的可能性。 然而,要參與美國市場並不只是盲目跟隨標的這麼簡單,而是需要策略和方式,尤其對新手而言,除了選股以外還會遇到語言、開戶流程、Ap
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本策略採用5、30分K的支撐與壓力進行突破買進與跌破賣出策略,透過盤中的量能變化進行買賣操作策略,該指標能夠真實地反映出價格的波動情況,並且可以靈活地調整參數進行進出場操作。 此策略主要是針對看盤的經驗,將策略轉化為程式進行自動化交易,減少人為的操作
Thumbnail
這篇是給初學技術分析者的建議,覺得去蕪存菁,最簡潔有效的東西。 1.認識什麼是K線,開高低收,成交量。 2.知道均線與均量的數學意義。 3.學習簡單的走勢型態,比如W底M頭,切線,跳空缺口。 以上3點就足夠了,不管基於什麼說法想法理由,都不要花時間去學任何其他指標。
Thumbnail
技術指標源自統計學原理,反映市場變化的概率分佈,而非預測工具。本文了解指標背後邏輯有利活學活用,甚至自行改良創新。
Thumbnail
這篇文章將分享作者在量化交易中的一些心得和經驗,包括使用線性表示商品未來合理價格、避免以單一指標決定交易等。透過這些觀點,讀者可以獲得更多對量化交易的理解。
Thumbnail
趨勢線1-2-3策略利用趨勢和轉折元素,通過線圖可視化關鍵點。可對策略做變換,藉此了解市場動能,並設置動態停損線。策略風險在於進場停損需確實,且可能因為提前出場而少賺。因對少賺風險,可以藉由一些停損點設置方式來改善績效。
Thumbnail
本文章介紹了股市中常用的技術指標,如相對強弱指標(RSI)、隨機指標(KD)、移動平均線(MA)、動力指標(MTM)、指數平滑異同移動平均線(MACD)、寶塔線。透過這些指標,讓投資者能夠更好地瞭解股票的買賣力道、價格趨勢以及逆勢操作的時機。
Thumbnail
在上一篇中,我們在模型探討隨機截距交叉延宕在Extension 3:Multiple indicators定義。本文為實作部分,將說明Multiple indicators的依序四個步驟的Mplus語法。 ,
Thumbnail
可能包含敏感內容
所有的K棒都是真真實實用資金砸出來的,因此去看懂K棒的最高點、最低點、開盤價與收盤價很重要。 技術分析不能一成不變,要隨著趨勢來畫線。使用不同的週期來畫線,短線操作者(採用日K棒即可),因為我們主要是做選擇權,期貨則是需要更長的週期來看。 技術分析的兩大流派就是逆勢交易與順勢
Thumbnail
一般常見的時間架構分成三個:趨勢級別、分析級別、進場級別。 趨勢級別 週線 or 日線,目的是為了確認整體市場的方向,以及關鍵流動性區域(支撐、壓力位) 分析級別 4H or 1H,目的是確認市場當前方向、公允價值缺口、訂單塊、流動性區域、高期望值交易區域,需要花較多時間來分析。 進場級別
Thumbnail
這篇來淺談Multicharts和XQ的基本差異 基本知識 在講差異前,先讓大家知道,程式交易或是量化分析的軟體,其實是有很多選擇的。 當然,每種選擇會有不同的上手難度,以及費用。 通常越底層的語言,上手難度會越難,相對的,靈活性也會比較高。 反之,越高階的語言,上手難度越低,但靈活度