文章列表

學習程式交易很大程度就是讓你與其他炒家不同

其他
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2019-10-20

學習程式交易很大程度就是讓你與其他炒家交易同一個市場時變得不同,而且進退有據,這個是筆者最切實的經驗! 舉例在期指市場上, 不論你是為了餬口, 每個月賺取一份薪金; 或是要成為高手, 把資金在短時間翻幾倍, 熟習個人的入市策略實是重要一環。很多新手認為隨便買幾本投資書, 閱讀幾篇文章專欄, 看幾段影片教學, 再按照當中所學的入市步驟,套用在市場交易, 便以為可每天賺到利潤。亦有很多行外人經常掛著一個謬誤在嘴邊: 若果人人都學了這些入市步驟, 豈不是人人可變大富翁? 事實上, 這些新手和行外人有這些誤解, 皆因他們把入市步驟看得過於重要, 認為入市步驟就是期指的一切。筆者並不是否認入市步驟的重要性, 只是相比之下, 交易者對整個入市策略的熟習程度, 才是關鍵。 那些行外人某程度是對的, 若你只跟隨入市步驟進行交易, 起初你還能賺到一些收入, 但長期而言, 你便開始質疑你的入市策略, 因為它開始令你出現虧損, 甚至是大虧損, 或連續虧損, 久而久之, 你便會放棄整個策略, 並更換另一策略, 捱不過此關的人, 更會乾脆脫離期指市場, 然後長嘆一句「期指世界是騙人的!」 入市步驟只是給予交易者一個框架, 一個較高機率的方向。一個高手跟一個新手即使利用同一個入市步驟交易, 他們的入市位和平倉位卻必定不相同, 原因是經驗和對整個策略的熟練程度不一樣。經驗是需要長年累月, 但熟練程度卻可由人手回溯測試(Back-testing)提升。筆者在使用任何一個入市策略前, 必定會以期指市場的歷史數據作回溯測試。在整個過程, 不單止能了解該策略的最大虧損幅度、連續虧損次數、勝率等基本資料, 最可貴的, 是能清楚知道一般「坐倉」時間、「坐倉幅度」、入市後的情況等獨特性。 舉例來說, 若一個入市策略一般需要坐倉十五至二十分鐘, 假若即市時使用此策略卻已坐倉了三十多分鐘以上, 基本上已可部署平倉; 又假若一個入市策略一般只需要坐倉三十點左右, 即市時卻已坐倉了四十多點以上, 基本上已可部署止蝕; 有很多入市後的情況亦同樣可透過人手回溯測試中熟習, 若即市時走勢出現突變, 跟預期有太大分別, 亦已可部署止蝕。 一個交易者真的熟習他的入市策略, 以上的資料應早已了解清楚, 所以即市交易時, 並不可能百分之一百跟足整個入市步驟, 因為世間上並無必準的入市位, 更無必勝的平倉位, 而是講求交易者的技術和見解。 很多人都會花大多心機和金錢去學習不同的入市策略, 但若只把入市策略的步驟看一遍, 再看看其勝率和盈利率, 便用來交易, 那麼十之八九都會虧損收場, 只有熟習你的入市策略, 了解其特性, 明白其長處短處, 才能在交易期間用得其所。

如何在12小時學懂程式交易

其他
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2019-10-17

不少人總是認為程式交易就是很難「上手」,網上看到一大堆的程式語言,就是總認為自己學習不到,最後連一些基本的用法也不願意去接觸,但為了替個人的交易策略做測試,又或希望透過程式交易解決真實交易時的「人性化」問題,只好付費找人將策略寫出來,其實只要肯認真的去學,一般來說,花12小時左右的時間,你學習得到的程式交易技術,可以是終身受用的! 當然程式交易不代表「必勝」,但卻是未來的趨勢,不論是分析股票、期指、美期、黃金、原油期貨、或其他期貨等,已越來越多人使用程式,在真實交易時自然較為有優勢! (12小時的學習過程): 1) 先學習程式的基本用法(只約需二至四小時) 一般只要具備基本的電腦知識也很容易上手,程式的應用並不像很多初學者所想像的那樣困難。 2) 學習程式進階語法及接駁全自動交易的知識(約需二至四小時) 這過程中,需要針對重點學習,實際上所需掌握的重點其實不多,但必需反覆練習,程式的應用就是要將重點多練,一般來說將重點反覆練習數小時,已不難將自己想到的交易策略寫出來做測試,甚至直接進行程式交易。但請緊記,學習程式就是要多練,只要下定決心去看看這個領域的運作,便會發現程式交易其實沒有大家初接觸時所想像般困難! 3) 當然在真實進行程式交易時或許作仍會遇上問題,我們也考慮了這一點。課程完結後,學員若對程式的使用仍有欵問… 我們設有「半年」的免費諮詢期,如學員有以下問題,這半年中都會「免費」替學員完成,包括連接證券行進行全自動交易或想到的交易策略但就是寫不到出來(無論是股票、期指、美期等) ,我們的團隊會協助大家將你想到的策略完成。 網頁:www.quants.hk Facebook專頁: https://www.facebook.com/quantshk/ 電郵: paul.mark881@gmail.com

最新出版書藉:《MACD程式交易應用》

其他
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2019-10-08

本書前身《MACD實戰應用法則》於2012年出版口碑載譽,至今相隔六年期間,市場的波動越來越大,MACD的滯後及假訊號問題也令很多使用者感到困惑。 最新出版的《MACD程式交易應用》內容除大量更新外,更涵蓋多項湛新內容,特別介紹如何提高MACD實戰性,應用在期指及股票Daytrade之上。更包括Zero Lag MACD(零滯後MACD)、Positive Volume Index、Negative Volume Index、Dynamic Trader Oscillator等的特別用法,與MACD配合同時運用,實用性能大大提高。此外,如何觀察滬深300指數期貨與期指的互動關係做即市交易,也是筆者認為目前最有效的即市交易期指方法之一。同時更教授如何利用程式做Back-testing及全自動交易,透過程式讓MACD這個指標在實戰時更為有效! 至於即市交易股票如何做到Day Trade for a living,本書也有介紹,無可否認,MACD不是甚麼無敵指標,但對預測市況,無論是即市走勢,還是長線走勢都有一定幫助。此外,無論應用在股票、期指、期權之上,也有其用處,只要能有效提高它的實戰性,將這個指標融入你個人的交易系統之時便會更有幫助。 更多文章: facebook專頁:https://www.facebook.com/quantshk/ 網頁: www.quants.hk email: paul.mark881@gmail.com

「箱型理論」反過來運用,在股災中或會是獲取暴利的機會!

其他
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2019-10-06

【期貨程式交易講座】 參加者將獲贈:【Nicolas Darvas 箱型理論”修改成跌市造淡版本”(Multicharts應用)】 「箱型理論」反過來運用,在股災中或會是獲取暴利的機會! 日期:2019年10月10日(星期四) 時間:晚上7時半至8時半 講者:麥振威(香港證監會持牌人士) 富昌金融集團聯席董事 地點:香港中環皇后大道中183號新紀元廣場中遠大廈33樓 登記:可於辦公時間內致電3108 8828報名留座 每次翻看達華斯(Nicolas Darvas)的著作:《我如何在股市賺進二百萬美元》(How I Made $ 2,000,000 in the Stock Market),相信都是看到下半部份,他找到一套持續獲利的交易方法時覺得最精彩。 這書最初的部份就是說他偶然的機會在股市中獲利,然後就不斷嘗試交易,當然結果是重覆地虧損,在他那個年代,資訊流通並不方便,加上他是一位舞蹈員,簡單來說,他是憑閱讀周刊及月刊的股市資訊來選股,但後來他發現遠離市場的消息反而更有利他交易,沒有了市場的「雜訊」反而更確信自己的交易模式。 然後某天他發現,股價就是經常在一個箱型裏波動,當突破一個箱型後又會轉移至處於更高位置的箱型裏波動,由於價格可以預測,下單時,無論是買入或賣出他都運用「限價單」來進行。 「限價單」? 不是很普通的事情嗎? 但在那個年代卻是甚少人採用,而他的著作推出後便令更多更多的人懂得用限價單入市。 「箱型理論」這套方法讓他獲利達200萬美元,在那個年代差不多是現在的2億。後來大家都稱他的交易方法是「大升市」中的絶佳獲利方法。 要將這套交易方法用Multicharts的PowerLanguage寫成一套全自動的交易策略並不困難,但可以告訴大家,不少人backtest這套交易方法,也覺得回報強差人意,但若然作出修改,把它應用在大跌市中效果又會如何? 短期內不少人也看淡本港股市,恒指會跌至那個水平仍屬未知數,或許股災的來臨,將達華斯的「箱型理論」反過來運用,在股災中或會是獲取暴利的機會! 本周四的講座會贈送Nicolas Darvas 箱型理論”修改成跌市造淡版本”(Multicharts應用),也會教大家如何去修改,讓這套方法改得更加好。 更多文章: facebook專頁:https://www.facebook.com/quantshk/ 網頁: www.quants.hk email: paul.mark881@gmail.com

利用ASI選股及即市交易期指

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2016-01-04

假期有學員問及ASI這個指標,其實過去在不同的場合也有介紹過,ASI這指標由J. Welles Wilder所創,看到這個名字,大家自然會想起由他研創的RSI、ATR等指標,事實上他在1978年撰寫的《New Concepts in Technical Trading Systems》所介紹的技術指標,至今都已十分流行。而ASI卻是較少人採用的,根據J. Welles Wilder所指,他希望「創造」一個價格,比真實價格更具代表性及預測性的,這才是他心目中「真實」的價格,更重要的是這個價格能讓使用者去更有效地判斷價格突破壓力或跌穿支持的真偽。 ASI的用法在網上大家應可找到很多很多,公式也不難找到,而這個指標在Amibroker中也是內置的,故不難應用。常見的用法是利用ASI來選股,找出ASI由負數轉為正數的股票,若大家運用這個簡單的方法每天在「港股通」中的300多隻股票中挑選股票,應發現有一定的效用。當中以港交所(0388)在2014年11月及2015年4月的例子是十分明顯的,又或其他的股票如騰訊(0700)也是如此。 但請看看銀娛(0027),去年ASI由負數轉為正數時,卻是股價見頂回落的時間。不同的股票會有不同的特性,一直認為不可能同一種分析方法應用在市場上不同的股票之上,究竟那些股票適合用那些工具去分析,利用程式其實可以在很短的時間便能找到答案。 至於該學員問及如何利用Amibroker編寫ASI由負數轉為正數的選股策略,答案如下: function SwingIndex( Limit ) { Hy = Ref( H, -1 ); Cy = Ref( C, -1 ); Ly = Ref( L, -1 ); Oy = Ref( O, -1 ); r1 = abs( H – Cy ); r2 = abs( L – Cy ); r3 = abs( H – L ); r4 = abs( Cy – Oy ); k = Max( r1, r2 ); r = IIf( r1 >= Max( r2, r3 ), r1 – r2/2 + r4/4, IIf( r2 >= Max( r1, r3 ), r2 – r1/2 + r4/4, r3 + r4/4 ) ); return IIf( r == 0, 0, 50 * ( ( C – Cy + 0.5 * ( C – O ) + 0.25 * ( Cy – Oy ) ) / r ) * k/Limit ); } function AccumulationSwingIndex( Limit ) { return Cum( SwingIndex( Limit ) ); } Filter = AccumulationSwingIndex( Param(“Limit", 100, 1, 1000 )) > 0 AND Ref(AccumulationSwingIndex( Param(“Limit", 100, 1, 1000 )), -1) <= 0; 當然除了ASI這個指標外,大家可自行加上其他的選股準則來配合一併分析,若然懂得利用Amibroker,這類簡單的策略應不難做測試,大約十多分鐘應已能完成。 至於應用在期指的即市交易又如何?單單運用ASI由負數轉為正數這種方法即市交易期指,若只炒開市「第一轉」的話,其實有一定參考價值? 分析的準則分為四類: 開市後ASI由負數轉為正數 – 向好 開市後整個上午市況中,ASI皆為正數 – 向好 開市後ASI由正數轉為負數 – 向淡 開市後整個上午市況中,ASI皆為負數 – 向淡 若加上其他分析工具如成交量等又是否更有參考價值? 過去若沒有程式,要測試這類簡單的策略其實真的需要很長時間,但若懂得應用,以下的方法其實不難測試,而且更可加上自己的經驗,比如當日是裂口高開還是裂口低開? 高開/低開的幅度有多大? 開市首分鐘上升/下跌的幅度有多大? 隔晚美股的走勢如何? 內地股市開市首分鐘的走勢如何? 等等等,利用程式把不同的準則加進策略中,熟習程式運用的學員們應不會覺得太困難,而且從中大家應會發現更多更有效的交易策略!

以限價單做AutoTrade減低Bid/Ask Spread影響

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2015-09-17

附圖是今天(2015年9月17日)期指的1分鐘圖走勢,可看到開市第一個MACD訊號,以及波幅收窄後的第一個MACD訊號也能賺到錢。但可以只有在2015年是這樣,今年港股及期指的波幅比過往大很多,若同樣策略放在2014年,則會是虧損,特別是計及買賣差價及滑價的影響後。 早前建議大家在Back-test時單邊佣金設定在200元,這假設是交易的佣金是20元,而剩下的180元則全是是買賣差價及滑價的影響。 在課堂上也有建議大家以這個簡單的策略做測試,也可自行修改策略,便是希望大家發現,由於2014年波幅不及2015年,在計及買賣差價及滑價,根本如何去改動策略也難以賺錢,除非能有方法減低買賣差價及滑價的影響。 事實上,利用程式寫出一個交易策略,當發出入市訊號後,要確定能真正「成交」,這難晚需要追價,比如設定追價10點,這當然不是每次高於現價10點入市,追價10點是確認能成交的做法,最終高追的幅度平均約1至2點,但期指本身買賣差價已有3點,加上這高追的1至2點,單邊的「成本」(未計佣金)已達到4至5點,這是AutoTrade的問題之一,也因而令很多能賺錢的策略變成虧損。 當然某些Trader想出的策略便是因應這問題而改良策略,正如在個人書藉中曾提及「211」的方法,受買賣差價及滑價影響是較其他策略為低的。 在課堂上先叫學員們做macd第一個入市訊號策略的測試,便是希望明白這一點。而在課堂完結後便會再約每位學員,會再教大家如何利用Amibroker設定以限價單做AutoTrade,以配合大家個人的策略。 要寫出這類策略其實不算太困難,先寫好大家的策略,再後加這部份便可以! 這方法應對很多的策略也有效,應會發現一些因計及買賣差價及滑價而不能賺錢的策略,回報會改善很多!

入市時間改為「波幅收窄後第一個MACD入市訊號」效果更好?

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2015-09-17

有關開市第一個MACD訊號的策略,也有學員電郵詢問,其實在課堂上講解了一個思考交易策略的概念,入市的時間最好是即將出現大升/大跌的時間,而即將出現大升/大跌的時間大多便是「波幅收窄」的時間。 很可能你的策略只有「五成中」,但無論買升還是買跌,若都選擇在波幅收窄的時間入市,估錯方向時可在有限幅度便止蝕,但獲利時則可賺取更大幅度的利潤。比如結果是40點止蝕,80點止賺,在20個交易日中,只有一半能獲利,最終在未扣除交易費用下,獲利的幅度也有400點。 另一個好處是波幅收窄後出現的升/跌浪,只要估對方向,坐倉的機會是相對較少的,升浪/跌浪便急速地運行,這減低了入市後坐倉的壓力。 我們假設開市後第一個MACD的入市訊號也只有「五成中」,但是否又可以稍作修改? 把「開市後第一個MACD的入市訊號」改為「開市後波幅收窄後的第一個MACD入市訊號」才入市交易? 如何介定波幅收窄,某些學員喜歡用保歷加通道的BANDWIDTH,筆者建議也可以用SD與五支陰陽燭的平均SD作比較,如附圖(一)是本日期指的1分鐘走勢,開市後第一個MACD入市訊號出現便造淡,結果能賺錢,但改為「開市後波幅收窄後的第一個MACD入市訊號」才入市也同樣能賺錢。 不過,大家再看看附圖(二),當日若在開市後第一個MACD入市訊號便入市,即使能獲利,幅度也十分有限。但若改為「開市後波幅收窄後的第一個MACD入市訊號」才入市,則當日獲利的幅度卻大很多! 當然這個只是建議的思考策略模式,若在設計個人交易策略時遇上問題,也歡迎學員們隨時找我研究!

2015年每天只交易第一個MACD訊號也能賺錢?

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2015-09-15

近日有學員問及,若2015年每天只交易第一個MACD(12,26,9)的金叉或死叉訊號好像也能賺錢,原來這麼簡單的策略在2015年也能有不俗回報! 但其後他再測試2014年的數據卻又發現虧損收場。 附圖是在2015年每天只交易第一個MACD(12,26,9)入市訊號的BACK-TEST REPORT,結果是2015年1月2日至9月14日獲利41.77%,15萬元本金交易1張大期,資金累增至212652元(扣除手續費手及滑價),但2014年卻虧損34.76%。 (2015年回報) (2014年回報) 在這當然不是指只交易第一個MACD入市訊號便能賺錢,這絕不可能!如大家自行測試,也可看到雖在2015年能賺錢,但部份交易坐倉的幅度達200點或以上,在真實交易時根本承受不了這份壓力。 以下是利用Amibroker簡單地寫出每日只交易第一個MACD入市訊號的方法, 1)先開啟Amibroker的Formula Editor 2) 把以下的language貼上: SetPositionSize(1, spsshares);BuyCondition = Cross(MACD(12, 26), Signal(12, 26, 9));ShortCondition = Cross(Signal(12, 26,9), MACD(12, 26));CrossCondition = BuyCondition OR ShortCondition; CrossTotal = Sum(CrossCondition, BarsSince( DateNum()!=Ref(DateNum(),-1)));Buy = BuyCondition AND Ref(CrossTotal, -1)==0;Sell = 0 OR TimeNum() >= 160000;Short = ShortCondition AND Ref(CrossTotal, -1)==0;Cover = 0 OR TimeNum() >= 160000; ProfitPercent = Optimize(“WinPercent", 1.6, 0.2, 2, 0.1);LossPercent = Optimize(“LossPercent", 1.2, 0.2, 2, 0.1); ApplyStop(stopTypeProfit, stopModePercent, ProfitPercent);ApplyStop(stopTypeLoss, stopModePercent, LossPercent); 3) 在backtest前根據以下做設定: 一個十分簡單的策略,在2015年又好像比很多的策略回報更好? 其實,既然單單是交易每天第一個MACD入市訊號也能在2015年賺錢,是否能根據這個觀念去作出修改? 藉此想出一套個人的交易策略? 比如出訊號後把入市位介定在其他水平,如平均線等? 又或將1分鐘圖表改為3分鐘、5分鐘或10分鐘的圖表? 另外,是否每天也需要交易? 如附圖中便是將這個簡單得不可再簡單的策略,加上與上日收市的MACD作比較這個準則,藉此剔走一些入市訊號,結果2015年1月2日至9月14日獲利由41.77%提升至182.37%,15萬元本金交易1張大期,資金累增至423547元(扣除手續費手及滑價)。 以下是利用Amibroker簡單地修改上述策略的寫法: SetPositionSize(1, spsshares);BuyCondition = Cross(MACD(12, 26), Signal(12, 26, 9));ShortCondition = Cross(Signal(12, 26,9), MACD(12, 26));CrossCondition = BuyCondition OR ShortCondition; CrossTotal = Sum(CrossCondition, BarsSince( DateNum()!=Ref(DateNum(),-1))+1);Buy = BuyCondition AND Ref(CrossTotal, -1)==0;Sell = 0 OR TimeNum() >= 160000;Short = ShortCondition AND Ref(CrossTotal, -1)==0;Cover = 0 OR TimeNum() >= 160000; ProfitPercent = Optimize(“WinPercent", 1.6, 0.2, 2, 0.1);LossPercent = Optimize(“LossPercent", 1.2, 0.2, 2, 0.1); ApplyStop(stopTypeProfit, stopModePercent, ProfitPercent);ApplyStop(stopTypeLoss, stopModePercent, LossPercent); 當然這個也只是作參考,並不是單單這樣便能賺錢! 在課堂上向來也鼓勵學員多嘗試,如上述策略是每天開市後的第一個MACD入市訊號,那若然把策略改為每天「正股市場」開市後的第一個入市訊號,結果又會如何? 利用程式的好處就是可以自行去測試,再加上自己經驗得來的交易觀念去修正任何一個策略,繼而進行程式交易。不過在這想提醒一點,2015年港股及期指的波動情況確實比過去五年中任何一年更大,這也令不少Trader的策略在2015年的回報與過去數年不同(當然有些高手年年也大賺的!)。 此外,在這想指出一個問題,2015年港股及期指的波動情況與過去數年不同,相信滬港通的推出是其中一個原因,這點在滬港通剛推出時在講座中提及,但凡一些政策上的轉變,也會令市場的波動產生變化,正如2011年推出期指延長交易時間,大家在設計交易策略時便常遇到一個問題,策略放在2015、2014、2013、2012、2011年也可以賺錢,但在2010及之前的年份表現卻不同,這便是政策令市場波幅改變的結果。 如何去解決這個問題,如何在新政策推出後再修正個人的交易策略,這方面在課堂中會與大家探討!

麥振威

程式交易在美國及臺灣其實早已流行,在中國內地也有不少程式交易的專家,而近年程式交易在香港也逐漸興起,其實程式交易不是很多新手想像的那樣神秘,只要學懂基本的用法,遇上問題時有專人解答,再自己不斷嘗試,經過數月的時間,大部份人也會學懂如何將自己的交易策略轉化為程式語言,又或將來在發現一些市場的特性時,也懂得如何利用程式去自行做測試,優化個人的交易策略,無論是股票、期指等也能透過程式做分析,藉此提高交易的回報,本網誌便是希望介紹各種有關程式交易的知識,讓更多的投資者了解這個新趨勢。

聯絡: paul.mark881@gmail.com
網頁: www.quants.hk
 

熱門推介