“Martingale是純粹的惡魔,它會吞噬掉你所擁有的一切!”,多年來,這是人們對Martingale的一致看法。Martingale的使用導致了逆勢,重倉,無止損,與經(jīng)典的外匯投資理念的“順勢、輕倉、止損” 是完全對立的。它像一枚隨時會爆炸的定時zhadan一樣,讓投資者無法安枕。
然而,還是有不少人對此表現(xiàn)出熱切的興趣。多半是茫然無知的初學者,也有少數(shù)是精通數(shù)學及編程的技術狂人,在一片罵聲中,MartingaleEA還是逐漸浮現(xiàn)到了市場的前臺。
10Point3
比較早的MartingaleEA可以追溯到一款叫10point3 的EA。它在2006年8月就出現(xiàn)在Forex-TSD的論壇上,至今已達到470頁討論,4700多條留言,算得上一個人氣火爆的老貼了。
這款EA的原始版本代碼比較簡潔,是一款單向度的Martingale(即不能買賣同時開倉)。內置的加倉規(guī)則為:如果MaxTrade(最大加倉層數(shù))設為12層以下,翻倍加倉;設為12層以上,加倉數(shù)為前一訂單的1.5倍。內置了MACD指標判斷方向,當14期MACD當前柱大于前一柱值時,開倉方向為多;反之,開倉方向為空,該判斷只適用于第一個訂單,一旦訂單開出,就只按同一個方向開倉,直到全部平倉。 雖然這只是一款初級形態(tài)的MartingaleEA,但仍有幾點可取之處:
(1)設置了ReverseCondition參數(shù),可以人為改變開倉方向。當ReverseCondition 設為1時,原來的做多方向變?yōu)樽隹?,原來做空的方向變?yōu)樽龆?,當然,這也只適用于第一個訂單;
(2)設置了賬戶保護,當AccountProtection設為1時,可以設置訂單保護的范圍,當訂單超過這個范圍后,可以對最后一個訂單單獨平倉(但回測這一功能似乎沒發(fā)揮作用);
(3)可以給每個訂單設定止損,當然,通常這種設置很難實現(xiàn)盈利,但也避免了人們詬病的“爆倉”問題。
10Point3對MartingaleEA起到了一定的引領和推動作用。許多人在這個基礎上進行修改參數(shù)、增加功能的嘗試,使10Point3滋生出許多變異的版本。
Swb Grid
與10Point3 如出一轍的是SwbGrid。以4.1版本為例,它與10Point3一樣,是一款單向度的Martingale,向一個方向逆勢加倉,在達到利潤目標后全部訂單同時平倉。它與10Point3明顯不同是:10point3用MACD作為首單過濾指標,選擇順勢方向入場,入場后價格逆勢再用Martingale解套;而SwbGrid首單過濾指標使用的是BBand、RSI及Stoch,主動選擇以逆勢方向入場。入場之后,按設定的距離逆勢加倉,不再使用過濾指標,否則加倉距離會被放大,錯過很多寶貴的回調平倉機會。SwbGrid可以設置加倉的倍數(shù),默認為2;也可以選擇按照某一固定數(shù)加倉,如每次加倉0.01。開倉時每張訂單可以設置止損和止贏;如果選擇stealth_mode=true模式開倉(即隱身模式,避免平臺商進行后臺操控),則以市價單模式開倉;如果選擇stealth_mode=false,則一次性將全部level內的訂單以限價單的形式全部開出。同時,鑒于星期五開倉面臨持倉過周末的危險,該EA還設置了“星期五開倉限制”;另外,該EA還設置了“單日盈利限制”,實現(xiàn)設定的單日盈利目標后,EA不再開倉。
Blessing
Blessing致力于對傳統(tǒng)的Martingale方法進行某些突破。從其2.5版本中,我們發(fā)現(xiàn)了這種努力的方向:(1)實現(xiàn)資金分散策略。Blessing似乎意識到MartingaleEA將全部資金運用于單種貨幣的風險,有意設置了將資金分成部分來管理,一個貨幣對可以獲得其設定的一份資金。比如,如果10000美金的帳戶,如果將其Portion設置為5, 該EA就將其管理的資金限定在2000美元, 再以此為基礎來計算資金管理方式,風險似乎小了很多;(2)進行自動的倉位計算,即在使用資金管理設置為true的時候,程序會跟據(jù)分配的資金來計算開倉手數(shù);(3)自動計算網(wǎng)格距離,其計算方法是以ATR值為基礎,默認設置為日線圖21期ATR值;(4)自動判斷市場方向與人工強制做單方向相結合,當其MCbyMA設定為true時, 可以用MA來判斷市場的走勢, 從而決定首單的開倉方向;當MCbyMA設定為false時, 可以人工強制做單方向, 即MC=0為做多,MC=1 為做空,MC=2為多/空皆可;默認的MC值為2。(5)長短網(wǎng)格相結合。Blessing似乎看到了傳統(tǒng)以短線網(wǎng)格為主的MartingaleEA 雖然解套快,但加倉速度過快、逆勢硬扛的距離太短的毛病,想把其做成一個結合中、長線的Martingale。這從其默認的參數(shù)設置就可以看出來:它將網(wǎng)格分成三個級別,每一個級別里可以設置最大訂單數(shù)量、網(wǎng)格距離和止盈點數(shù)。第一級別的網(wǎng)格距離設置為25,止盈點數(shù)為50,訂單數(shù)量為4;第二級別的網(wǎng)格距離設置為50,止盈點數(shù)為100,訂單數(shù)量為4;第三級別的網(wǎng)格距離設置為100,止盈點數(shù)為150,訂單數(shù)量為總共最大訂單數(shù)減去第一、第二級別的訂單數(shù)量??梢姡谝患墑e的網(wǎng)格為短線網(wǎng)格,如果訂單在這一級別沒有實現(xiàn)全部平倉,往往意味著市場出現(xiàn)了更加長的趨勢,訂單進入第二級別,使用更大的網(wǎng)格距離來等待市場更大的回調,第二級別的網(wǎng)格可以看成是中線網(wǎng)格;如果第二級別仍然沒有實現(xiàn)盈利并全部平倉,訂單就進入第三級別,為等待市場更大的回調,其設置的網(wǎng)格距離就更大,可以看成是長線網(wǎng)格。 當然,把短線的訂單浮虧帶入長線,賬戶的整體浮虧程度肯定是大大增加了。(6)運用UsePowerOutSL 參數(shù)來設定一個遠距離的止損,以防止由于斷電、斷網(wǎng)或其他原因遭遇市場突然大幅波動無法止損出局。
Blessing 到了3.0以上的版本后,其源代碼幾乎完全改變,復雜程度大大增加,但依然沿襲諸多了Blessing2的開發(fā)思路。 以3.8版本為例,可以看到其還在堅持Blessing2中的資金分配策略、長中短線結合策略、人工設置市場方向策略等。Blessing3明顯的改進體現(xiàn)在:(1)舒適而詳盡的界面顯示,將各種交易信息顯示得一清二楚;(2)更多的過濾設置,Blessing3 可以選擇單獨或合并使用MA、CCI、BB_Stoch來作為首單入場的過濾器;(3)多貨幣對沖功能,允許在浮虧或開倉數(shù)量達到一定程度后,選擇一個其他貨幣對,當該貨幣對的Correlation 值(即貨幣相關性值,從-100到100)達到設定水平時,交易該貨幣對,達到風險對沖的目的;(4)去除最早的訂單,由此來減少賬戶的浮虧;同時,可以將平倉產生的損失點數(shù)加在后面訂單的利潤目標上,以此來彌補該損失;(5)使用了提前平倉(EarlyExist)功能,對于那些開單時間過長的訂單或者開出的過多訂單,可以通過減少盈利目標來使其早平倉。(6)更豐富的智能網(wǎng)格計算功能,除了沿用Blessing2 的ATR值自動計算網(wǎng)格外,還采用了以RSI值與RSI_MA值作為過濾的SmartGrid設置。當然,Blessing3還增加了眾多的平臺適用性功能,使其適用于各種不同平臺。然而,由于功能的龐雜,掌握使用Blessing3變成了一件高難度的事情。
OM_2Way
這款EA值得一提的倒不是其影響有多大,而是在策略上也有所創(chuàng)新。它也算一款“單向度”的Martingale,其首單開倉的位置過濾器為:當前時間框架下離700期均線60點的位置(默認,可以人工設置)。如果在700期均線下方60點的地方,則做多;在700期上方60點的地方,則做空。這一過濾器的用意很顯然:在偏離均線較遠的地方,價格回調的幾率更大,逆勢行走的距離會很短,從而使回調盈利的概率增大,風險減小。這算不上是該款EA獨到的地方。該款EA采用了“部分平倉”的策略,即將部分盈利單與部分虧損單對沖,獲取少許利潤,而不是等到價格回調到賬戶整體盈利的時候全部平倉。這種策略在以往的MartingaleEA中很少見到,是其新穎之處。這種“部分平倉”的策略可以抓住市場最小的回調機會來減輕倉位,降低風險;當然,也有可能會“操之過急”,失去了全部平倉的機會,為將來留下后患。但總體上說來,這種策略會將浮虧控制得更好,其承受市場風險的能力要強一些。
OM_2Way在“部分平倉”的策略中,一般用已盈利的一個或兩個訂單,去對沖虧損最多的訂單,對沖后的利潤就是一次交易的盈利。比起“全部平倉”的策略來,這會增加開倉次數(shù)和交易次數(shù),盈利速度會有所提高。值得注意的是OM_2Way確定下一訂單的倉位不是從起始倉位開始計算,而是以“最后一個訂單”的倉位,再加上隨訂單數(shù)量而增加的持倉量來計算,這樣會導致,盡管盤面上的訂單數(shù)量并不多,但由于“最后一個訂單”的倉位很大,賬戶總體持倉量偏大的情形。
BK’s Grid EAHybrid
這款EA之所以值得關注,是因為它改變了過去Martingale EA“單向度”的策略,發(fā)展出了“雙向度”的Martingale。所謂“雙向度”,就是多、空同時開倉,各自按照設定的Martingale 策略開倉、平倉,或者根據(jù)整體策略交叉平倉或全部平倉。雙向度Martingale最大的優(yōu)點就是其盈利的速度大大加強,通過賬戶余額的快速增長來對沖和降低風險。Hybrid實行的是做多與做空分別平倉,在下單后,EA分別計算出做多、做空訂單的平均價格,再加上設定的利潤目標,分別將所有多單止盈線和空單止盈線,通過同時止盈的方式來實現(xiàn)多單全部平倉或空單全部平倉。
此外,Hybrid的倉位計算及網(wǎng)格距離的計算也與一般的MartingaleEA有很大的不同。網(wǎng)格的距離不是完全固定的人工設置,也不是基于指標的自動計算,而是在計算中融入了持倉總量的因素,也就是說,在持倉總量增加的時候,其網(wǎng)格密度會縮小,以此來盡可能的減小平倉所需的回調距離;在計算下一訂單的倉位時,又融入了網(wǎng)格距離的因素,即當設定的“最小網(wǎng)格距離”(MinGridSize)越大時,其倉位的遞增速度越小。這種“距離與倉位”交融的策略在一般MartingaleEA中是很難見到的,或許這是其被稱為Hybrid(混血)的原因。但這種策略給使用的設置及變換帶來一定難度,必須要在理解源代碼基礎上,通過反復的回測檢驗,才能找到合適的參數(shù)設置。
PipMaker
PipMaker堪稱“雙向度”EA的佼佼者。不過,這只是對于15.0以前的版本而言。從15.0以后,由于改編者與原作者并非同一人,改編后的PipMaker 交易策略發(fā)生重大變化,從一款“雙向度”的MartingaleEA變回到“單向度”的EA,甚至成了一款剝頭皮的EA了。因此,我們在此僅以10.0版本為例子探討其策略。
PipMaker10.0與OM_2Way一樣,堅持“部分平倉”的理念,讓盈利單去對沖最遠端得虧損單,而不使用賬戶“全部平倉”。與Hybrid相比,它除了具備Hybrid的多、空“分別平倉”的功能,還具備了多、空“交叉平倉”的功能,把MartingaleEA的策略進一步深化了。簡單地說,其策略就是:根據(jù)設置同時做多與做空,以多、空訂單組成的網(wǎng)格中心線為界,當價格處在中心線以上時,市場被看作上升趨勢,以中心線以下最底端的訂單為對沖目標(多數(shù)時候為虧損的賣單,有時也會是盈利的買單),用已經(jīng)盈利的買單或已經(jīng)盈利的賣單來與其對沖,獲取目標利潤;當價格處在中心線以下時,市場被看作下降趨勢,以中心線以上最頂端的訂單為對沖目標(多數(shù)時候為虧損的買單,有時也會是盈利的賣單),用已經(jīng)盈利的買單或者已經(jīng)盈利的賣單來與其對沖,獲取目標利潤。
PipMaker的這種策略,實際上發(fā)展出了四種對沖平倉方式:多(虧)-多(盈)對沖,空(虧)-空(盈)對沖,多(虧)-空(盈)對沖, 空(虧)-多(盈)對沖。也就是說,當一個訂單走錯方向使,除了可以在市場回調時被同向的訂單“挽救”以外,還可以在市場繼續(xù)向前時,被反向的訂單“挽救”。這樣一來,賬戶整體的風險必然大大下降。
實際檢測的結果也是如此。PipMaker 開出的多、空訂單,就像會移動的網(wǎng)格,隨著價格的變動而不停的變動邊界。這樣一來,即使趨勢行情來臨,價格走出上千點,PipMarker絕不會也拉出千點的網(wǎng)格來坐以待斃,而是不停地平掉一部分反向訂單,追隨價格前進。當然,最終追隨的效果還是取決于趨勢強弱的程度和與之相關的參數(shù)設置。如果趨勢太猛、太強或參數(shù)設置不當,反向訂單的平倉速度遠遠跟不上,“套牢”的程度也會很深。
凡事有利必有弊。PipMaker 這種交叉平倉的策略,在市場小幅震蕩的時候可謂如魚得水;在市場出現(xiàn)大趨勢時,PipMaker 雖因其浮虧緩慢而不會對“暴倉”倍感恐懼,然而,隨著“套牢”程度的加深,PipMaker會明顯減少開倉和平倉獲利的機會,盈利能力大大下降。而且,其“解套”也不如一般的MartingaleEA來得干凈利落,要把套牢的單子一單單解掉, 往往需要市場經(jīng)過多次反復震蕩?;蛟S是因為這個原因,后來的改編者干脆將其核心的策略刪改得一干二凈,增加了一些所謂“過濾器”設置,如MA, CCI,Fish, ARSI等,用以作為開倉過濾, 把一款以“平倉策略”見長的EA,變成了一款以“開倉策略”多樣化的“大路貨”Martingale 了,讓人頗感遺憾。
ForexHacked
誰會想到曾被“人人喊打”的MartingaleEA 還會有商業(yè)的市場呢?ForexHacked 向人們證實了這一點: Martingale絕不是一個小范圍交流的私人空間,它有著廣闊的大眾市場。作為商業(yè)軟件,以Martingale為核心策略的EA的出現(xiàn)或許有著更深刻的背景:市場環(huán)境變得越來越“Ranging”,傳統(tǒng)的交易理念越來越無法適應市場。以2.3版本為例,作為一款雙向度的MartingaleEA,看不出其與Hybrid有本質的區(qū)別,但它的距離、倉位、盈利目標的設置比Hybrid明晰多了。ForexHacked還設置了時間過濾器,這也是商業(yè)軟件的普遍做法,用以選擇有利交易時間,排除不利的交易時間,降低風險;此外,ForexHacked還可以自行設置Martingale的啟動層數(shù),在未達到啟動層數(shù)以前,訂單都將使用設定的初始倉位,不順次加倉,要等達到啟動層數(shù)之后再開始加倉,這樣可以在一定程度上延展EA逆勢前行的距離。另外,ForexHacked也嘗試開出對沖倉位,來對沖由于逆勢倉位過多造成的浮虧,等待市場的回調。不過,這一策略目前在測試中尚未得到成功的印證。
順便一提的是,與ForexHacked師出同門的ForexEnvy(也是商業(yè)軟件)無論在策略上還是在代碼風格上都有著明顯的雷同之處。ForexEnvy的最大優(yōu)點是所有訂單的距離和倉位都可以單獨自由設置,從而具有了更大的靈活性。
IndoRun
MartingaleEA 從誕生后幾乎就是沿著一條復雜化的道路發(fā)展:為了解決“爆倉”問題,開發(fā)者不得不絞盡腦汁的想出各種過濾方法以及資金管理手段。IndoRun把這種復雜化推向了極致:它的外部設置參數(shù)就多達近200項,要理解和掌握它確實很有難度。不過,大略觀察,IndoRun主要發(fā)展了各種過濾技術:(1)時間過濾器,包括星期一至五的交易日過濾, 交易小時過濾,交易時段(即亞洲盤、歐洲盤、美洲盤)過濾,非農之日過濾,非農后第一星期日過濾等等;(2)新聞過濾器,可以根據(jù)新聞發(fā)生時間、影響程度及被影響的貨幣進行選擇交易;(3)指標過濾器,使用了ATR、CCI、Momentum、RSI、MA、Envelop等多種指標進行入場過濾。其默認的設置為等值加倉,不過,也有Martingale設置的選項。有趣的是,該EA還有一項設置,在資金每增長1萬元后自動將倉位加倍;另外一項設置可在亞洲時段將倉位加倍,考慮到亞洲時段市場波動較小。其盈利模式也有好幾種,第一種是采用全部訂單固定金額盈利,在該模式下,每次平倉盈利的金額為固定值,與倉位的多少無關;第二種是遞減盈利模式,在該模式下,隨著倉位的增加,盈利目標將減少,以盡快平倉降低風險;第三種是根據(jù)ATR值來計算盈利,ATR值大則增大盈利目標,ATR值小則降低盈利目標。此外還有一些追蹤止盈和保平的方法。IndoRun也是屬于單向度交易的MartingaleEA,通常采用限價單的方式入場,交易同一方向的貨幣籃子。不過,獨到的是,IndoRun可以同時交易兩個到三個貨幣籃子,這些訂單設置有不同的MagicNumber,用同一款EA來進行管理,這是過去所有的EA中不曾用到的技術??傊@款以復雜、深奧為特點的EA,雖然在一定程度上綜合了過往MartingaleEA的技術,并有所創(chuàng)新,但也最終不能解決“爆倉”問題,只有在完全了解和掌握其用法并謹慎使用的情況下,才能把風險控制到最低。
總結對Martingale的看法
在介紹了這么多款知名的MartingaleEA后,或許您會失望:沒有一款EA真正解決了人們擔心的“爆倉”問題!那么,Martingale是不是不能用,研究Martingale是否還有價值?
我的看法是:MartingaleEA 的宿命就是“爆倉”,這一點過去、現(xiàn)在和未來都不會改變。就像人的宿命就是死亡一樣。但人要死亡,并不妨礙人可以活得很精彩。同樣,盡管Martingale的宿命就是爆倉,但一樣可以好好利用,用得好,照樣可以賺錢。MartingaleEA爆倉是一種必然,但何時、何地爆倉,又有一定的偶然性,與參數(shù)設置、入場位置等有很大的關系,這一點可以為我們所利用。
當前MartingaleEA從臺下走到臺面,從民間走向商業(yè),正是市場環(huán)境變化的結果。記得一位投資大師回憶他年輕時代的市場環(huán)境的時候說:當時市場沒有那么多波動,上漲就是持續(xù)的上漲,下跌就是持續(xù)的下跌。再來看看我們今天的外匯市場,可以說完全是兩重天?,F(xiàn)在的外匯市場幾乎很難見到持續(xù)、明顯、穩(wěn)定的趨勢了,幾乎全部被震蕩和“震蕩型趨勢”所取代。而震蕩和震蕩型趨勢,恰恰就是MartingaleEA的天堂(也就是傳統(tǒng)交易方法的地獄),難怪那些商業(yè)MartingaleEA開始走紅了!
很多人說:“Martingale 結合好的資金管理,可以戰(zhàn)勝市場”。這話有一定道理,但似是而非。資金管理可以幫助Martingale 在市場上多存活一些日子,但無法戰(zhàn)勝市場。除了資金管理,其他的技術也非常重要。今天的Martingale,已經(jīng)不是人們想象中的那種盲目加碼的機器狂人了,而是融入了更多的智能因素。這些因素在前面介紹的EA中均有所體現(xiàn),比如:(1)限制加倉速度和總倉位;(2)多、空雙向對沖;(3)多貨幣對沖;(4)部分倉位平倉或止損;(5)減少盈利目標或追蹤止盈;(6)結合人工趨勢判斷;(7)信號過濾及交易時段過濾;(8)資金分倉管理;(9)智能網(wǎng)格設置;(10)交易策略對沖;等等。
筆者認為,MartingaleEA雖然注定要爆倉,但Martingale的策略卻可以發(fā)揮作用,這并不矛盾。這其中一項關鍵的技術,就是要進行綜合的資金管理和調配,從概率上取得對市場的優(yōu)勢,而不是一般意義上的“資金管理”。
比如說,對一個10萬元資金的賬戶,用MartingaleEA來進行交易,按每個月10%的盈利率算,需要10個月時間(不進行復利交易),才能賺取一倍的利潤,將這一倍的利潤全部提取后,就可保本,脫離風險。因此,只有在10個月的交易期間內,不發(fā)生任何“極端行情”,才可以真正盈利,否則,就會發(fā)生虧損。在目前的市場狀況下,這個條件不算苛刻,但也不算容易,在概率上看不出有明顯的優(yōu)勢。
但是,如果將這個10萬元資金的賬戶分拆為A、B兩個賬戶,各自用一款MartingaleEA來交易,要求是:A、B兩個賬戶在交易方向上必須完全相反。這樣,在發(fā)生“極端行情”時,只會有一個賬戶發(fā)生爆倉,另一個賬戶會照常盈利,虧損率為50%。如果按每個月10%的盈利率來計算,只要之前連續(xù)盈利5個月,并把利潤全部提取出來,就可保本,脫離風險。相比起前面的條件來說,這要容易多了。
再如果,我們將上述10萬元資金拆分成A、B、C、D四個賬戶,分別用兩款MartingaleEA來交易,其中A、B兩個賬戶的交易方向相同,但設置的參數(shù)不同以及入場點不同;C、D兩個賬戶的交易方向與A、B兩個賬戶都是相反,但各自設置的參數(shù)以及入場點也不同。這樣,在發(fā)生“極端行情”的情況下,A、B或者C、D賬戶會面臨威脅。但是,由于參數(shù)設置及入場點的不同,在實踐中通常會有不低于50%的“存活率”。因此,真正爆倉的只是其中的一個賬戶。風險降低為25%。也就是說,按照每月10%的盈利率,只要之前兩個半月沒有出現(xiàn)“極端行情”,就可以保本并盈利了。這在目前的市場狀態(tài)下,明顯具有概率上的優(yōu)勢,盈利前景好得多了。
也許有人說,每個月10%的盈利率,對MartingaleEA來說,目標太高,會放大風險。這就涉及到一個“資金調配”的問題。我們都很知道,MartingaleEA在大部分時候,由于其起始倉位很小,浮虧率非常低,資金利用率也很低。倉位里準備足夠的資金,是為了防備“極端行情”的。為防備“極端行情”一直讓賬戶資金閑置,大大的降低了MartingaleEA的盈利率。因此,對于具備條件的交易者,完全可以合理的調配資金,在浮虧率極低的情況下,將部分資金用于其他的交易策略(如剝頭皮、趨勢追蹤、套利等);在極端行情來臨、浮虧增大的時候,把這些資金調回來,通過減少資金占用的方式來提高盈利率,這種方法應該優(yōu)于以增加倉位頭寸或網(wǎng)格密度來提高盈利率的方法。
當然,真正要將Martingale用好,還是要結合人工趨勢判斷,適時進行參數(shù)調整,以適應市場的變化,減少“爆倉”的概率,提高在“極端行情”下的 “存活率”??傊?font style="word-wrap: break-word; padding: 0px; list-style: none;">Martingale的“爆倉”并不可怕,只要這種“爆倉”發(fā)生的頻率和發(fā)生的概率是在限定的范圍內,其造成的損失遠遠低于在適宜交易期間的盈利所得,Martingale的策略是可以持續(xù)盈利的。
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請
點擊舉報。