第一部分:指標
為了能賺錢而不是虧損,無論是專業的交易商還是個體,都在研究各和總結各種種的規律,並做成指標,我們經常會發現一些指標圖線看起來很完美,於是都會想到要根據指標的變化進行交易。www.emoneybtc.com
但這樣做會賺錢嗎?
能否賺錢,我們就要看這些指標有沒有作弊。即確定指標是否有未來函數的計算,也就是說指標會不會根據現在的K線,計算後將指標在歷史K線上標示做更改。比如原來是賣的提示,改為買(恐怖吧)。(當然還有一些EA特有的環節也會影響盈利問題,在這裡不講)
確定是否有未來函數的方法有兩種:
1.白盒校驗(即查看源碼)
直接看源碼中的循環部分,如果有修改歷史曲線數組的行為,則可以立刻斷定有未來函數。
2.黑盒觀察
當沒有源碼的時候,可以將指標加載到1分鐘的圖線上,連續不斷觀察其標示的變化,尤其注意與當前K線狀態最接近的歷史K線標示的變化。如果隨著當前K線的變化出現過歷史變化更改,則也可以確定有未來函數。
指標EA化之前必須要確認的事情:
如果一個指標含有未來函數,那麼這個指標是沒有多大意義的。也就是說,我們要將指標改為EA前,必須確認這個指標是不含未來函數的,這樣指標EA化才有意義。
第二部分 指標EA化
接下來將指標EA化大致的做法是:
在EA中通過函數iCustom讀取這個指標的當前K線輸出值,得出當前的狀態,來決定是否入場或者平倉並反向入場。
iCustom的具體用法:
指標一般都是曲線或者箭頭兩種。在這裡我們要把曲線和箭頭都看成是數組就容易理解了。
對於指標來說每一條曲線或者箭頭都是寫在與每個K線對應的數組中的,也就是說一條曲線對應一個數組,一個方向的箭頭也是對應一個數組(有箭頭的數組值是當時的價格,沒箭頭地方的數組值是“空”)
iCustom MT4的幫助裡說的是:“計算指定的客戶指標並且退回它的值”,即這個函數可以讓你獲取指定指標的第幾個數組對應第幾根K線上的計算數值。
具體如下:
double iCustom(string symbol, int timeframe, string name, ..., int mode, int shift)
計算指定的客戶指標並且退回它的值。必須在terminal_directory/experts/indicators目錄內編寫客戶指標(*.EX4文件)。
參量:
symbol - 計算指標數據上的貨幣對名稱。NULL表示當前貨幣對。
timeframe - 時間周期。可以時間周期列舉任意值。0表示當前圖表的時間周期。
name - 客戶指標完整的程序名稱。
... - 參量設置(如果需要)。通過的參量和他們的順序必須與desclaration命令和客戶指標的外部可變物的種類對應。
mode - 索引行。從0到7並且必須對應以其中一個使用的索引的 SetIndexBuffer 函數。
shift - 從顯示緩沖采取的值的索引(轉移相對當前柱特定相當數量期間前)。
示例:
double val=iCustom(NULL, 0, "示例Ind",13,1,0);
double va2=iCustom(NULL, 0, "示例Ind",13,0,1);
例如:一個指標,畫了兩條曲線,則可以用iCustom取得這個指標在第4根K線上對應的第一條曲線的數值。
我們現在已經可以根據自己的想法去獲得一個指定指標的任何K線上的狀態數值了。那麼下一步我們就要開始EA的概念。
因為EA只針對當前價格狀態下的動作進行控制。所以一般而言我們就取指定指標在當前K線下的計算數值用於EA的條件判斷。
如果你認為當前K線沒有結束,其數值始終在變化,有可能一會有訊號一會沒訊號,那麼你可以采用取前一K線的指標數值的方式作為基礎。(如果用當前K線指標數值作為條件會有不確定的結果,但如果用前一K線數值做條件則有“錯過最佳入場點”的問題。這是需要程序設計者權衡的問題。)
另外的一個問題,就是怎末去判斷指標輸出的數值與我們肉眼看到的訊號一致起來的問題。
如果參考的指標是一種變色線,則一定是一種顏色一個數組的方式疊加起來顯示的。我們在取其數值的時候只需要看看不同顏色的數組的數值比較一下就知道其結果是哪種顏色,並作為EA的條件進行動作就行了。
如果是箭頭的方式,則一樣是去取其數值,無箭頭的K線上指標對應的數值是“空”,有箭頭的地方數組對應的數值肯定不是空。用這個來判斷是否發生了訊號就行了。
比如雙色線,就一定是兩個數組分別顯示不同顏色,當指標認為應該顯示其中一種顏色的時候就將這個顏色對應的數組在當前K線中的數值設成當前價。反之則設為“空”。這樣循環一遍後,你肉眼看到的就是變色線了。
現在我們可以輕松獲得指標的當前訊號狀態了!
下一步就是結合進EA中,就是把指標中的數組值拿過來。
第三部分 EA 編程邏輯
EA就是一個循環往復的過程。每來一個價格就運行一次。
EA是電腦,並不知道你現在的倉位情況也不知道指標的情況,除了計算什麼都不知道,一切都是編程者賦予的。因此,編程者腦子裡一定要建立一種綜合狀態的概念。
EA的一開始一定要先進行倉位的情況檢查。大致的邏輯如下:
1. 先查出持倉情況和持倉單的方向。
2. 然後獲得指標的數值。
3. 判斷並操作。
持倉狀態下:根據持倉單的方向進行對應來判斷反向訊號是否發生。如果發生則平倉並反向入場。如果沒發生則直接返回,等待下一次價格的而到來。
空倉狀態下:則兩個方向的訊號都做判斷,哪邊發生了就按那邊的方向入場。
4. 其他的的細節
不論入場還是出場都要在發出動作後馬上判斷是否正確執行的判斷。如果沒有執行成功則一定要立刻放棄後面的操作直接返回。等待下一個價格來的時候在此發出同樣的動作。
另外說明的是數據是自動更新的。
外_匯_邦 WaiHuiBang.com摘要:一個大牌科技公司的工程師、一個高盛交易員加上一個懂技術的VC,組合在一起就是Coinbase最初的模樣。而現在,它已經是數字貨幣領域
據了解,評價體系是區塊鏈2.0時代的核心規則,就像爹媽對孩子的評價標准,決定了孩子未來的性格和成就,企業也是,老板考核啥,員工就干啥,而不
數字貨幣全線暴跌。今年1月,比特幣價格累計跌幅近30%,創3年來最差月度表現,較去年12月底峰值2萬美元已跌去約55%。
“近幾年來,隨著虛擬貨幣交易在國際市場上的火爆,區塊鏈技術逐漸走入了人們的視野。然而人們更多地關注虛擬貨幣交易帶來的巨大財富。隨著國家加
POW或許很多人都不陌生,它是Bitcoin的共識協議,比原鏈也采用了這種協議。去中心化,核心基礎是“Permissionless”(無需
哪些銀行可以炒原油 哪些銀行可以炒原油 09:22 來源: 宜寧分析師小仙 2015年,大部分銀行都退出了賬戶原油
兩會期間證監會人士表示中國存托憑證(CDR)即將推出,互聯網巨頭們紛紛回應合適的時候會選擇回歸A股,那麼CDR究竟是什麼意思?希財
一看變現能力、二看實現盈利、三看投資效率 盡管業內人士對現金流量表的編制已經作了不少探討,但仍有許多讀者來電詢
最佳答案: 不需要刷新的,現在淘寶整點的秒殺活動都會自己變價和開始,所以只要到點購買就行了。不過像這
最佳答案: 淘寶賬戶注銷成功後,關聯的支付寶將單獨存在,不會受影響更不會被注銷。不過你在注銷淘寶賬號