- Blessing
Blessing致力於對傳統的Martingale方法進行某些突破。
Blessing 2.5版本中,我們發現了這種努力的方向:
(1)實現資金分散策略。Blessing似乎意識到Martingale EA將全部資金運用於單種貨幣的風險,有意設置了將資金分成部分來管理,一個貨幣對可以獲得其設定的一份資金。比如,如果10000美金的帳戶,如果將其Portion設置為5, 該EA就將其管理的資金限定在2000美元, 再以此為基礎來計算資金管理方式,風險似乎小了很多。
(2)進行自動的倉位計算,即在使用資金管理設置為true的時候,程序會跟據分配的資金來計算開倉手數。
(3)自動計算網格距離,其計算方法是以ATR值為基礎,預設設置為日線圖21期ATR值。
(4)自動判斷市場方向與人工強制做單方向相結合,當其MCbyMA設定為true時, 可以用MA來判斷市場的走勢, 從而決定首單的開倉方向;當MCbyMA設定為false時, 可以人工強制做單方向, 即MC=0 為做多, MC=1 為做空, MC=2為多/空皆可;預設的MC值為2。
(5)長短網格相結合。Blessing似乎看到了傳統以短線網格為主的Martingale EA 雖然解套快,但加倉速度過快、逆勢硬扛的距離太短的毛病,想把其做成一個結合中、長線的Martingale。
這從其預設的參數設置就可以看出來:它將網格分成三個級別,每一個級別里可以設置最大訂單數量、網格距離和止盈點數。
第一級別的網格距離設置為25,止盈點數為50,訂單數量為4;
第二級別的網格距離設置為50,止盈點數為100,訂單數量為4;
第三級別的網格距離設置為100,止盈點數為150,訂單數量為總共最大訂單數減去第一、第二級別的訂單數量。
可見,第一級別的網格為短線網格,如果訂單在這一級別沒有實現全部平倉,往往意味著市場出現了更加長的趨勢,訂單進入第二級別,使用更大的網格距離來等待市場更大的回調,第二級別的網格可以看成是中線網格;如果第二級別仍然沒有實現盈利並全部平倉,訂單就進入第三級別,為等待市場更大的回調,其設置的網格距離就更大,可以看成是長線網格。 當然,把短線的訂單浮虧帶入長線,帳戶的整體浮虧程度肯定是大大增加了。
(6)運用UsePowerOutSL 參數來設定一個遠距離的止損,以防止由於斷電、斷網或其他原因遭遇市場突然大幅波動無法止損出局。
Blessing到了3.0以上的版本後,其原始碼幾乎完全改變,複雜程度大大增加,但依然沿襲諸多了Blessing 2的開發思路。以3.8版本為例,可以看到其還在堅持Blessing 2中的資金分配策略、長中短線結合策略、人工設置市場方向策略等。Blessing 3明顯的改進體現在:
(1)舒適而詳盡的界面顯示,將各種交易信息顯示得一清二楚;
(2)更多的過濾設置,Blessing 3 可以選擇單獨或合併使用MA、CCI、BB_Stoch來作為首單入場的過濾器;
(3)多貨幣對沖功能,允許在浮虧或開倉數量達到一定程度後,選擇一個其他貨幣對,當該貨幣對的Correlation 值(即貨幣相關性值,從-100到100)達到設定水平時,交易該貨幣對,達到風險對沖的目的;
(4)去除最早的訂單,由此來減少帳戶的浮虧;同時,可以將平倉產生的損失點數加在後面訂單的利潤目標上,以此來彌補該損失;
(5)使用了提前平倉(Early Exist)功能,對於那些開單時間過長的訂單或者開出的過多訂單,可以通過減少盈利目標來使其早平倉。
(6)更豐富的智能網格計算功能,除了沿用Blessing 2 的ATR值自動計算網格外,還採用了以RSI值與RSI_MA值作為過濾的SmartGrid設置。
當然,Blessing 3還增加了眾多的平台適用性功能,使其適用於各種不同平台。然而,由於功能的龐雜,掌握使用Blessing 3變成了一件高難度的事情。
【連結】 (Blessing 3.9.6) (Blessing 3.9.6.09) (Blessing 3.9.6.09 review) (Blessing 2)
- BK’s Grid EA Hybrid
這款EA之所以值得關注,是因為它改變了過去Martingale EA「單向度」的策略,發展出了「雙向度」,就是多、空同時開倉的Martingale。「雙向度」各自按照設定的Martingale 策略開倉、平倉,或者根據整體策略交叉平倉或全部平倉。
雙向度Martingale最大的優點就是其盈利的速度大大加強,通過帳戶餘額的快速增長來對沖和降低風險。
Hybrid實行的是做多與做空分別平倉,在下單後,EA分別計算出做多、做空訂單的平均價格,再加上設定的利潤目標,分別將所有多單止盈線和空單止盈線,通過同時止盈的方式來實現多單全部平倉或空單全部平倉。此外,其下單手數及網格距離並不採固定的設定值,而是根據持倉做計算。而這種「距離與手數」交融的策略在一般Martingale EA中是很難見到的,或許這是其被稱為Hybrid的原因。
在持倉增加時,網格密度會縮小;以此來儘可能的減小平倉所需的回調距離;
在計算下單手數時,又融入了網格距離的因素,即當設定的「最小網格距離」(MinGridSize)越大時,其下單手數的遞增越小,以節制持倉。
【連結】(BK’s Grid EA Hybrid) (MGH system)
- PipMaker
PipMaker堪稱「雙向度」EA的佼佼者。不過,這只是對於15.0以前的版本而言。從15.0以後,由於改編者與原作者並非同一人,改編後的PipMaker 交易策略發生重大變化,從一款「雙向度」的Martingale EA變回到「單向度」的EA,甚至成了一款剝頭皮的EA了。因此,我們在此僅以10.0版本為例子探討其策略。
PipMaker 10.0與OM_2Way一樣,堅持「部分平倉」的理念,讓盈利單去對沖最遠端得虧損單,而不使用帳戶「全部平倉」。與Hybrid相比,它除了具備Hybrid的多、空「分別平倉」的功能,還具備了多、空「交叉平倉」的功能,把Martingale EA的策略進一步深化了。
簡單地說,其策略就是:根據設置同時做多與做空,以多、空訂單組成的網格中心線為界,
當價格處在中心線以上時,市場被看作上升趨勢,以中心線以下最底端的訂單為對沖目標(多數時候為虧損的賣單,有時也會是盈利的買單)。用已盈利的買單或已盈利的賣單來與其對沖,獲取目標利潤;
當價格處在中心線以下時,市場被看作下降趨勢,以中心線以上最頂端的訂單為對沖目標(多數時候為虧損的買單,有時也會是盈利的賣單)。用已盈利的買單或者已盈利的賣單來與其對沖,獲取目標利潤。
PipMaker的這種策略,實際上發展出了四種對沖平倉方式:
多(虧)-多(盈)對沖,
空(虧)-空(盈)對沖,
多(虧)-空(盈)對沖,
空(虧)-多(盈)對沖。
也就是說,當一個訂單走錯方向使,除了可以在市場回調時被同向的訂單「挽救」以外,還可以在市場繼續向前時,被反向的訂單「挽救」。這樣一來,帳戶整體的風險必然大大下降。
實際檢測的結果也是如此。PipMaker 開出的多、空訂單,就像會移動的網格,隨著價格的變動而不停的變動邊界。這樣一來,即使趨勢行情來臨,價格走出上千點,PipMarker絕不會也拉出千點的網格來坐以待斃,而是不停地平掉一部分反向訂單,追隨價格前進。當然,最終追隨的效果還是取決於趨勢強弱的程度和與之相關的參數設置。如果趨勢太猛、太強或參數設置不當,反向訂單的平倉速度遠遠跟不上,「套牢」的程度也會很深。
凡事有利必有弊。PipMaker 這種交叉平倉的策略,在市場小幅震盪的時候可謂如魚得水;在市場出現大趨勢時,PipMaker 雖因其浮虧緩慢而不會對「暴倉」倍感恐懼,然而,隨著「套牢」程度的加深,PipMaker會明顯減少開倉和平倉獲利的機會,盈利能力大大下降。而且,其「解套」也不如一般的Martingale EA來得乾淨利落,要把套牢的單子一單單解掉, 往往需要市場經過多次反覆震盪。或許是因為這個原因,後來的改編者乾脆將其核心的策略刪改得一乾二淨,增加了一些所謂「過濾器」設置,如MA, CCI,Fish, ARSI等,用以作為開倉過濾, 把一款以「平倉策略」見長的EA,變成了一款以「開倉策略」多樣化的「大路貨」Martingale 了,讓人頗感遺憾。
【連結】 (pipmaker v3~v11 ) (pipmaker on indicators)
- 10Point3
10Point3原始版本EA的代碼比較簡潔,是一款單向度(即不能買賣同時開倉)的Martingale。
內置的加倉規則為:
當MaxTrade(最大下單數,層數)在12層以下,翻倍加倉;下單到了12層或以上,加倉(下單手數)的倍數降低為1.5倍。
內置了MACD指標判斷方向:
當14期當前MACD柱大於前一柱值時,開倉方向為多;反之,開倉方向為空,該判斷只適用於第一個訂單,一旦訂單開出,就只按同一個方向開倉,直到全部平倉。
雖然這只是一款初級形態的Martingale EA,但仍有幾點可取之處:
(1)設置了ReverseCondition參數,可以改變開倉方向。
ReverseCondition=0; //0-Follow trend, 1-Counter trend
當ReverseCondition 設為1時,原來的做多方向變為做空,原來做空的方向變為做多,當然,這也只適用於第一單的方向。
(2)設置帳戶保護,當AccountProtection設為1時,便啟動訂單的範圍保護。當訂單超過這個範圍後,即單獨對最後的一單的倉位平倉。
if (OpenOrders >= (MaxTrades-OrderstoProtect) && AccountProtection==1)
OrderClose(LastTicket, LastLots, LastClosePrice, slippage, Yellow);
(3)可以給每個訂單設定止損。通常止損設置對實現盈利助益不大,但止損也避免了最受詬病的「爆倉」問題。
基於Martingale的10Point3發會的了引領和推動的作用,使10Point3衍生出許多變異的版本。
【連結】 (10point 3) (10points3 Ea)
- Swb Grid
與10Point3如出一轍的是Swb Grid。它與10Point3一樣,是一款單向度的Martingale,向一個方向逆勢加倉,在達到利潤目標後全部訂單同時平倉。它與10Point3明顯不同是:10point3用MACD作為首單過濾指標,選擇順勢方向入場,入場後價格逆勢再用Martingale解套;而Swb Grid首單過濾指標使用的是BoolBand、RSI及Stoch,主動選擇以逆勢方向入場。
入場之後,按設定的距離逆勢加倉,不再使用過濾指標,否則加倉距離會被放大,錯過很多寶貴的回調平倉機會。Swb Grid可以設置加倉的倍數,預設為2;也可以選擇按照某一固定數加倉,如每次加倉0.01。
開倉時每張訂單可以設置止損和止贏; 如果選擇stealth_mode=true模式開倉則以市價單模式開倉; 如果選擇stealth_mode=false,則一次性將全部level內的訂單以限價單的形式全部開出。同時,鑑於星期五開倉面臨持倉過周末的危險,該EA還設置了「星期五開倉限制」;另外,該EA還設置了「單日盈利限制」,實現設定的單日盈利目標後,EA不再開倉。
【連結】 (SWB Grid)
- OM_2Way
這款EA值得一提的倒不是其影響有多大,而是在策略上也有所創新。它也算一款「單向度」的Martingale,其首單開倉的位置過濾器為:當前時間框架下離700期均線60點的位置(預設,可以人工設置)。如果在700期均線下方60點的地方,則做多;在700期上方60點的地方,則做空。這一過濾器的用意很顯然:在偏離均線較遠的地方,價格回調的機率更大,逆勢行走的距離會很短,從而使回調盈利的概率增大,風險減小。這算不上是該款EA獨到的地方。該款EA採用了「部分平倉」的策略,即將部分盈利單與部分虧損單對沖,獲取少許利潤,而不是等到價格回調到帳戶整體盈利的時候全部平倉。這種策略在以往的Martingale EA中很少見到,是其新穎之處。這種「部分平倉」的策略可以抓住市場最小的回調機會來減輕倉位,降低風險;當然,也有可能會「操之過急」,失去了全部平倉的機會,為將來留下後患。但總體上說來,這種策略會將浮虧控制得更好,其承受市場風險的能力要強一些。
OM_2Way在「部分平倉」的策略中,一般用已盈利的一個或兩個訂單,去對沖虧損最多的訂單,對沖後的利潤就是一次交易的盈利。比起「全部平倉」的策略來,這會增加開倉次數和交易次數,盈利速度會有所提高。值得注意的是OM_2Way確定下一訂單的倉位不是從起始倉位開始計算,而是以「最後一個訂單」的倉位,再加上隨訂單數量而增加的持倉量來計算,這樣會導致,儘管盤面上的訂單數量並不多,但由於「最後一個訂單」的倉位很大,帳戶總體持倉量偏大的情形。
【連結】
- Indo Run
Indo Run也是屬於單向度交易的Martingale EA,通常採用限價單的方式入場,交易同一方向的貨幣籃子。
Indo Run的功能非常強大,大概有以下功能:
1、隨機MAGIC功能,可以放置別人分析你的訂單。
2、時間過濾。星期一至五的交易日過濾, 交易小時過濾,交易時段(即亞洲盤、歐洲盤、美洲盤)過濾,非農之日過濾,非農後第一星期日過濾等等;
3、新聞過濾。可以根據新聞發生時間、影響程度及被影響的貨幣進行選擇交易;
4、指標過濾器,使用了ATR、CCI、Momentum、RSI、MA、Envelop等多種指標進行入場過濾。其預設的設置為等值加倉,不過,也有Martingale設置的選項。有趣的是,該EA還有一項設置,在資金每增長1萬元後自動將倉位加倍;另外一項設置可在亞洲時段將倉位加倍,考慮到亞洲時段市場波動較小。
5、多重模式
6、多種自訂指標
其盈利模式也有好幾種,第一種是採用全部訂單固定金額盈利,在該模式下,每次平倉盈利的金額為固定值,與倉位的多少無關;
第二種是遞減盈利模式,在該模式下,隨著倉位的增加,盈利目標將減少,以儘快平倉降低風險;
第三種是根據ATR值來計算盈利,ATR值大則增大盈利目標,ATR值小則降低盈利目標。
策略介紹
1、限價單Limit掛單進場,預設是依據預設的ATR模型掛單。大家交易的時候,請開啟指標,就會依據指標進行掛單;可以選擇的指標如下:ATR(設定後會修改預設的ATR模型),CCI,Momentum,rsi,MA,Envelopes。
2、加倉設置,預設是網格加倉。如果需要馬丁加倉,請開啟馬丁選項。
3、止盈出場
使用說明
1、適用品種:EURUSD,AUDCAD,AUDUSD,USDCHF等波動性不大較穩定的品種。
2、適用週期:EA沒有內置時間週期,大家掛哪個週期,就在哪個週期交易。建議M15
Martingale EA之Indo Run為了解決「爆倉」問題,絞盡腦汁,推向了極致:它的外部設置參數就多達近200項,。
【連結】 (Indo Run 1.5)
- Forex Hanked
Forex Hacked作為一款雙向度的Martingale EA,它的距離、倉位元、盈利目標的設置比較明晰。ForexHacked還設置了時間篩檢程式,這也是商務軟體的普遍做法,用以選擇有利交易時間,排除不利的交易時間,降低風險;此外,ForexHacked還可以自行設置Martingale的啟動層數,在未達到啟動層數以前,訂單都將使用設定的初始倉位,不順次加倉,要等達到啟動層數之後再開始加倉,這樣可以在一定程度上延展EA逆勢前行的距離。另外,ForexHacked也嘗試開出對沖倉位,來對沖由於逆勢倉位過多造成的浮虧,等待市場的回檔。不過,這一策略目前在測試中尚未得到成功的印證。
【連結】()
[EA] 八款知名對沖加碼EA(下載)