簡介 程式交易(program trading)
特點 1、客觀。
程式交易 程式交易就是利用電腦軟體,將市場可操作的技術和經驗演變成電腦數據的形式,從而以電腦發出買賣訊號為依據進行的交易。這種交易不以交易者的自 身看法和預測入場,杜絕投資人可能因為盤勢所產生的情緒進行追漲殺跌的操作,從而避免人性化交易的缺點,也進而消除了交易中的主觀隨意性,大大減輕了交易 者下單前的恐懼、持倉中的焦慮和平倉後的後悔。
程式交易系統是技術分析一個延伸,程式化交易的最大優點在於絕對的客觀,可以幫助系統使用者最大程度地克服人性的貪婪和恐懼。交易系統的客觀性,保證了交易系統結果的可重複性。從理論上說,對任何使用者而言,如果使用條件完全相同,則操作程式完全相同。
2、一致
程式化交易系統純粹依據技術分析,完全排除任何基本面分析的影響,全部規則和參數完全機械化、數量化,使得系統交易方法相對於非系統交易方法而 言比較容易實施,使交易決策活動具有一致性,也就是說:如果市場是狀態A,那就用對策A,如果市場是狀態B,那就用對策B,依此類推,市場狀態和 交易對策一一對應。投資者完全按照交易系統給出的信號進行操作,確保了交易思路的連貫性和一致性,這對於交易者獲得長期的穩定的獲利具有非常重要的意義。
3、制式
在程式化交易系統中,對操作的出入局點、資金管理、風險管理以及對交易的各項環節都有明確而嚴格的要求,這些要求都是交易系統的有機組成部分, 他們都以制度的形式規定下來,對其具體的操作細節和環節都有明確規定,不容許猶豫不決,不容許模稜兩可,這些規則都是程式交易的制度和紀律。
4、穩定
程式化交易,換個側面來講,就是將實踐證明能夠獲得長期、穩定收益的交易規則通過計算機語言,實現自動化交易,好的交易系統不僅能夠提供出入局 點,同時也能夠給出止損的位置以及產生風險的機率,一個設計理念先進、執行便捷、參數可最佳化、勝率較高的自動化交易系統,完全可以在投機市場中實現長期、 穩定的盈利,儘管這種程式化交易系統的普及會稀釋其收益率。
要點 1、相對固化的高勝率的交易系統
程式交易 程式化交易系統 的設計是一項複雜的系統工程,不是簡單的幾個指標的套用,理論上來說程式化交易系統就是一種贏利模式,體現的應該是設計者的操作風格和手法,設計者應該是實際操作中的贏家,所做的只是把行之有效的贏利模式程式化、自動化。
最有名的交易系統無疑是“海龜交易系統”。1983年年中,著名的商品投機家理察.丹尼斯為了一個賭注招聘交易學員,因為里克(理察的昵 稱)或許是當時世界上最著名的交易員,所以,有1000多位申請人前來投奔他。他從這一群人精選出10個人,後來這個名單變成13個人。丹尼斯給其中的大 多數人提供了50萬至200萬美元的資金帳戶。海龜成為交易史上最著名的實驗,因為在隨後的四年中海龜們取得了年均複利80%的收益。
感謝這個偉大的賭注,丹尼斯向人們證實了華爾街並不完全被天才們壟斷,任何智力正常的人都可以成為贏家,前提是你必須有一套可行的交易系統。我 研究了海龜系統,真的非常簡單,完全是一些基本的規則。其實,相對意義上的“聖杯”確實存在,它蘊藏在我們每個人的內心,也就是說,每個人都有屬於自己的 一套最適合的交易系統,有了它,每個人都有在市場中穩定獲利的可能。每個人的性格、價值觀以及稟賦是不同的,而且對市場的認識和觀察也是不盡相同的,甚至 是千差萬別的。這就決定了每個人對行情的 認識也是不一樣的,交易體系之所以被稱為系統是因為各項規則都構成了一個有機整體的必要組分,不能或缺。各部分之間的相互影響相互作用非親手建造者往往不 能盡知其妙。有人拿了別人完整成熟的交易體系執行後結果卻很不理想,原因常常是對某些規則理解上有偏差。所以最適合自己的就是最好的,沒有什麼絕對的放之 四海而皆準的標準,一個好的交易系統對於設計它的人來說可能是交易成功獲利的利器,但對一個對市場認識非常淺薄的人來說可能就是虧損累累的禍端。所以,這 個高勝率的交易系統還必須要適合自己的交易風格,適合自己的個性,有完整的交易思想、市場分析和操作方案。
2、絕對精確嚴格的執行操作
雖然程式交易的套用,可以有效去除人性的弱點,不過當我們在操作中,若無法有效遵守指標訊號而進出場,即使有穩賺不賠的策略也無法讓您致富,因 此,當訊號出現買進或賣出時,身為交易者必定要遵守訊號操作,必須做到執行的機械和準確,如此才能有機會依循策略的目標而獲利。在海龜交易法則的試驗中, 丹尼斯宣稱他的交易系統可以向任何人公開,但實際上真正能嚴格執行的人一定是非常少的,因為這些規則是如此簡單以至於許多追尋“贏家秘籍”的交易者所不 屑,但一個深諳交易精髓者一定會有同感,其實投資成功的原則本來就是十分簡單!
3、作業系統的評估和最佳化
世界上沒有十全十美,任何事物都不例外,交易系統在其操作的過程中,肯定有許多需要改進的地方,以便更能適應新的變化了的市場和交易者的個性。 一個完整的交易系統應該包括:對機會品種的選擇、交易時機選擇、有效的風險控制、資金管理和倉位的控制(何時加倉、減倉和平倉)、執行系統以及監督系統六 個方面。所以,在長期的實戰中,就需要在以上每個環節對交易系統進行評判,就需要對交易系統進行檢驗和評估,這些檢驗包括:淨利潤、最大盈利和最大虧損、 最大連續盈利次數與最大連續虧損次數、最大投資本金損失比率、總交易次數、盈利次數比率與虧損次數比率、平均盈利額與平均虧損額之比等,然後全面分析系統 的優缺點,在綜合考慮和測試的基礎上進行最佳化。
4、系統操作的密切監督
伴隨程式交易執行的就是對系統操作的監督,程式交易的最基礎的要求,就是執行的嚴格和準確,就是消除交易中情緒因素的影響。當然,對個人交易者 而言,這確實存在很大程度上的困難,這就需要嚴格的紀律進行約束,或者安排他人進行非意志性機械操作等方法,杜絕在操作執行上的困難或偏差。而對機構交易 者,則一般有專門的監督人員或機構設定,來保證交易系統的嚴格的機械執行。
定義形式 什麼是程式交易(programtrading)?程式交易有多種形式,紐約股票
交易所 NYSE把程式交易定義為包含15隻或15隻以上的
指數 成分股 的組合交易,其價值超過100萬,這些組合交易是同時進行的,簡單的說,程式交易就是同時買進或賣出一籃子股票,也有少數程式交易是既買進又賣出股票的混合型程式交易。同時買進一籃子股票被稱為程式買進,同時賣出一籃子股票被稱為程式賣出。程式交易主要是大機構的工具,它們同時或幾乎同時買進或賣出整個股票組合,而買進和賣出程式可用來實現各種不同的目標。程式交易的對象涉及在
紐約證交所 的股票和它們相應在
芝加哥期權交易所 和美洲股票交易所交易的期權,以及在
芝加哥商品交易所 交易的
標準普爾500指數 期貨契約 。這些
金融產品 的交易根據的是純粹它們價格之間預先決定的關係,而不是任何基本面的因素,如各公司的收益、
股息 或增長前景、利率變動、貨幣波動、政策行為等。
程式交易
程式交易可分為
套利 型(arbitrage)和非套利型(nonarbitrage)兩類,套利型的程式交易即指數套利交易,它包括所有採取識別指數套利或
指數 替代(indexsubstitutes)的策略的交易。
指數套利 利潤來源是
股票指數期貨 與
現貨 的實際價值關係對理論價值關係的偏離,指數套利是程式交易的一種形式,其他形式的程式交易的例子包括便利的
清算 、EFP(期貨換現貨)的股票頭寸的清算、組合管理,而組合管理又包括組合重組(portfoliorealignment)和組合清算(portfolioliquidation)。儘管程式交易占總成交量的比例越來越大,但指數套利在程式交易中的比重不斷下降,1988年超過一半,1995年降到1/3,1997年第四季度為17%,在交易所成交量中僅為3%。1997年10月21日的程式交易各組成部分為,以
指數套利 為主的受規則80A約束的交易占16%,不受規則80A約束的程式交易占84%。不受規則約束的交易中,組合重組占35.02%,風險的減小及
對沖 占5%,組合的清算占2.57%,期貨換
現貨 的交易占2.35%,客戶便利占0.84%,便利的清算占0.04%,其餘的交易有54%。
由於信息工具的普及,市場的無效性小了很多,指數套利的利潤小了很多,要獲得利潤就需要更大的
成交量 和更複雜的模型。而且不僅是模型重要,同樣重要的還有很強的計算能力、很低的交易費用和很低的資金成本。因此指數套利比例必然下降,其他策略比例必然上升,其中主要的一種程式交易方法被稱為配對交易(pairedtrading),它利用
計量經濟模型 識別出市場上被高估和低估的股票,賣出高估的股票,買進低估的股票,然後用
期貨 對沖 這個程式交易的市場風險,雖然它名為配對交易,但實際上買賣股票的數量並不一定平衡。在1997年,配對交易的股票占全部的程式交易的30%。
從技術結構角度看程式交易系統,它利用計算機硬體和軟體來設計、實施和管理金融市場中的投資頭寸,包括用網路設備提供金融市場實時的價格數據,這些價格和交易成本數據一同輸入計算機後經專業軟體處理,看是否有交易機會。根據電腦程式發出的信號自動交易,通常是從交易者的計算機直接進入市場的計算機系統,並自動執行。程式交易公司用大量的計算機模型來設計與期貨對應的不同的股票組合。例如,公司可以運行程式識別與期貨關係最密切的股票組合,從而最大化潛在的利潤,最小化程式交易的風險。換句話說,該交易發生在兩個市場滿足特定的條件的時候,就是這個組合中的股票相對於
期貨 是價值高估或低估的。不過,純粹的
指數套利 在程式交易中只占很小的比重。公司還可以交易符合特定波動性和流動性特徵的股票。
套利 型和非套利型交易的共同之處認為市場存在均衡,計算機的高速計算能力能發現市場上的
非均衡 ,從而從非均衡到均衡的過程中獲利。實際上,程式買進和程式賣出與計算機智慧型沒有什麼關係,所有的
程式化交易 能手工完成,只不過非常複雜,所以需要計算機。
程式交易開始於1980年代初,那時大機構開始採用
指數 套利策略,也就是利用股票及其
衍生證券 的
價差 獲利。組合保險(portfolioinsurance)也在1980年代初流行起來。組合保險指的是使用
股票指數期貨 和
期權 來保護股票組合對付市場下跌。組合保險程式使得大機構能在一個保險模型的特定參數達到某個預定值時賣出大量的股票。據估計,在1980年代中期,有大約價值九百億的股票組合在組合保險的保護下。有人認為1987年的市場大幅波動內在的重要原因是組合保險和
指數套利 。不過,組合保險交易在1987年後就停止了,1988年交易所也頒布限制程式交易的規則80A。
程式交易的形式有多種,一些程式仍然是指數套利。另外,一些對沖基金(hedgefund)用到程式交易。所謂的“市場中性”(marketneutral)對沖基金,就常常構造
多頭 /空頭組合,根據某個特定的變數,如
市盈率 P/E,在組合中包括了買進一籃子股票同時賣出另一組股票。他們持有這些組合的時間常常在一個月或一個季度。市場中性投資指的是能中性化特定市場風險的
投資策略 ,它根據
金融工具 之間實際或理論的關係,持有相互抵消的多頭寸和空頭寸,目的是限制由於
巨觀經濟變數 或市場情緒變化導致的價格系統性波動的風險。與傳統投資的利潤來自證券的走勢不同,它的利潤來源是證券之間的關係。對於採取
市場中性策略 的交易者來說,他們賣空證券,而共同基金(mutualfund)一般只
做多 。市場中性化策略就是要利用Present and future的無效定價。相關證券之間定價的無效性的來源是金融市場的結構性特徵。利用市場的無效獲得的投資績效可以比市場平均的收益-風險關係要好。
交易優點 程式交易的優點,在於利用電腦化的買賣訊號,杜絕投資人的情緒化反應所導致的不理性下單,並且透過一致性的交易策略,避免追漲殺跌的操作。是故,程式交易主要是用來克服人性因為盤勢所產生的貪婪與恐懼,藉由電腦化的交易工具,來有效遏止人性的缺點,以達到最適的績效。
然而,坊間卻常出現程式交易年報酬100%,200%甚至300%的績效,在令人眩目的外表之下,其背後的實際操作卻常是虧損連連的。探討其原因,不外乎是投資人無法有效實行電腦程式所告知的買賣
訊號 ,造成錯失行情的結果。事實上,程式交易仍有其參考價值存在,投資人若能完全順應電腦程式所告知的買賣訊號操作,程式交易的績效仍然是可以期待的。
一般來說,市場上比較常見的程式交易系統為順勢系統,依照字面來看,順勢系統就是順著盤勢變化做出買賣訊號判斷的一個系統,此種系統的勝率大約有40%~50%,也就是作十次大概會賺四次,而這四次的獲利可以彌補其他六次的虧損,為一種賺大賠小的交易策略。此外,還有震湯系統,一說是逆勢系統,此系統之勝率較高,然而需要搭配停損的機制,否則容易出現長期下來勝率高,總獲利卻是虧損的情況,深究其原因,就在於容易產生賺小賠大的情形。
要建構一個好的程式交易系統,需要電腦程式系統與技術指標的相互搭配在電腦系統方面,Tradestation為非常強大的系統,其最受讚揚的地方在於可以自訂交易策略,並對針對歷史資料來回測與模擬,並可對參數做最佳化的設定。
而在技術指標方面,則須視交易人的交易偏好來制定交易策略,以順勢系統而言,可採用趨勢指標(DMI)或者動量指標(MTM)等技術指標,並且搭配其他交易規則來組成交易策略,而以震湯系統而言,則可採用
相對強弱指標 (RSI)等技術指標,並且搭配停損機制方為一良好之震湯系統。除了順勢系統與震湯系統之外,另有型態作業系統,然而此系統難度極高,因為每個人對於盤勢之看法不盡相同,是故在撰寫上較為困難,實務上較少採用。
在技術指標抓取上,特別需要注意過度最佳化(Overfitting)的問題。過度最佳化是指一昧追求樣本範圍內的績效最大化,而忽略同樣的參數在樣本外的預測能力。舉例而言,若該樣本是建立在多頭格局下,則在空頭格局下該樣本不見得適用。此外,程式過去的優秀績效並不代表未來的績效也會一樣優秀,因此在建構策略時,須特別注意參數績效的穩定性,如此才可規避過度最佳化的問題。
坊間常有許多標榜超高勝率的程式交易系統,然可能如前述所言有賺小賠大的情況,亦即在震湯行情中可以獲取小利,但是遇到大行情來時的趨勢波段卻會
兵敗如山倒 。是故,投資人在拿到具超高勝率的程式交易績效表時,必須將交易明細對照線圖,尋找是否因為波段來臨而有大賠的情況發生。此外,具有高勝率的程式交易系統,可能未將交易成本計入,若考量交易成本,則績效將大打折扣,第三,交易次數過度頻繁的程式交易系統會使得交易成本大幅提高,而且交易訊號過多也會造成下單跟不上速度的情況發生,這點亦值得深思。
良好的程式交易系統能否獲利的最大關鍵,在於交易人能否完全配合程式的買賣訊號來操作,雖然程式交易主要是為了克服人性的缺點而產生,但交易人若在交易過程中無法有效遵守程式交易系統告知的買賣訊號來進出場,即使有再好的程式交易系統,仍無法替投資人帶來利潤。是故,當程式交易系統告知買賣訊號的同時,交易者必須完全遵守訊號來進行操作,始能遵循策略目標來獲利。
入門方法 程式交易入門(一):第一步:必續經歷兩次以上慘烈的斷頭經驗,何謂慘烈?例如作多單斷頭後,不囉唆連拉五百點以上(必須是斷頭而不是認賠)。
第二步:隔離外界干擾因素,尤其是第四台分析節目。
第三步:催眠自己,告訴自己是一個股市白痴,盤面完全看不懂。
人都是主觀的,尤其金融操作者,更是嚴重,有斷頭的經驗是為了加深對程式交易的信任感,你的朋友是程式交易者嗎?模擬單有用嗎?有經驗者皆知不需多講,三個月的演練遇到的狀況有限,程式交易者若要再加上個人意識便稱不上程式交易者。作程式交易其實是帶有痛苦的,那是因為常常逆著自己的心意下單,如果有一兩次選擇性下單,而且僥倖對,那完了,波斷行情八成會賺不到,因為你會想要再僥倖一次又一次,程式交易不容易是因為絕大部分的次數是賠的,讓人想要避開一兩次的虧損進而提高整體獲利,久而久之,又回到原點,以自由意志下單,不知發過幾次誓,這次一定要每次跟單,但每次都做不到,一直惡性循環,
周而復始 。
程式交易入門(二):
以下談的是以程式交易做單一口需要多少錢,不以程式交易者看過笑一笑就好。
下一口程式單究竟多少錢才剛好?是三十萬?還是四十萬?這其實都不對,應該以契約值換算才對,例如
指數 六千點,契約值一百二十萬,那就準備六十萬做一口,簡單換算等於指數乘以一百,為什麼要這么多?是因為人性。假如三十萬做一口,遇到連續虧損,去掉十幾萬,這時已手軟還敢跟單嗎?除了虧損,以三十萬做一口,賺七八萬感覺很多了,提早下車,後面少賺一大段,嘔死了。人們常常以百分比計算盈虧,一天賠了一成,五天賠了一半,感覺很多,但如果以契約值換算出的保證金,幅度剛剛好,賠了不覺多,下轉向單不會手軟,賺了也不覺多,大行情不會被跑掉。
資金比在程式交易中是最最重要的一環,能不能完成一個漂亮的循環就看資金比,程式交易紀律,能讓你每天好吃好睡,管他
利多 利空 ,管他道瓊大漲大跌,程式交易用簡單的四個字形容就是---進退有據。
程式交易入門(三):
絕大多數人無法完全程式交易,主要是工具出了問題,讓人感覺到失誤率太高受不了煎熬,或者獲利率太低提不起興趣,在這提出一套簡單的評選程式,讓大家以此挑選適用的工具,版主在之前的文章中曾提到程式中含有
人性因子 ,這點本人相當認同,好的程式賺錢是必須的因素之外,最重要的是必須
人性化 ,甚至於人性化的重要性,超出整體獲利,畢竟能讓人無怨無悔的跟單,比高掛而不切實際且容易中途放棄的高整體獲利,來的實際而易得。
程式交易中,人性化的因子高低影響甚巨,有多少期友在程式交易中一次又一次的受挫,卻又一次又一次的受不了高整體獲利的誘惑再次以身試法,卻又不知問題出在哪裡,是本身自制力不佳,程式失效,盤面的關係,美國股市影響,到期日,甚至於怪到賓拉登的頭上......都不是,是工具錯了,人性化因子如何求出,首先求出AB值。
A值=平均每筆獲利除以平均每筆損失
B值=錯的總次數除以對的總次數
C值=A減B
C值=人性因子高低,稱它為循環比,也就是完成一個程式循環,這個公式算來簡單,但其中已透視了交易程式的一切,簡單的說
循環比高等於失誤率低獲利率高
循環比低等於失誤率高獲利率低
如何判斷
低於0.5不能用不是失誤率高就是獲利率低容易中途而廢
0.5-0.75可採用但仍稍嫌不足
0.75-1.0相當不錯跟單時符合人性
1.0以上相當優秀
採樣時間以多久為標準,個人認為是三年,台灣股市大概三年可完成一個多空循環,所有狀況皆以包含,如能有六年的資料,更能完整表現出程式的優劣,以上程式包含所有成本,交易稅與
手續費 (手續費以每口五百為計)。