ForeignEX 板


LINE

我又來啦記得上次發過一個簡單的EA設計概念,這次我提供一些實用的子函數, 給大家使用,基本上都可以直接複製貼上。 廢話不多說本文開始: 一.固定風險計算手數: 有的人喜歡用金額去計算下單量,讓下單量隨著資金上漲而加大, 這邊提供一個函數達成這樣的作法。 double Lotsact() { double lot; double margin = MarketInfo(Symbol(),MODE_MARGININIT); if(固定風險開關==true) { lot=NormalizeDouble(AccountFreeMargin()*固定風險值/margin,2); } if(固定風險開關==false) { lot=固定手數; } if(lot<0.01) lot=0.01; return(lot); } 將這段加在程式中,記得上次說的放在ONTICK之外, 然後在下單程序中的"LOTS"欄位中,把他呼叫出來即可。 另外記得在程式開頭加上以下三段: extern double 固定風險值 =0.01; extern bool 固定風險開關=false; extern double 固定手數 =0.1; 二.計算前面K棒之總和(或影線) double swing() { double swing[200] ;//紀錄數組,括號中的200可任意輸入但不能小於K線數量 double swingg ;//最後輸出值 for(int i=0;i<K線數量;i++) { swing[i] =MathAbs(iClose(Symbol(),PERIOD_M30,i)-iHigh(Symbol(),PERIOD_M30,i)); swingg+=swing[i]; //數組中資料相加 } return(swingg); } 這段程式碼是紀錄前面的實體K棒波動,做相加最後導出一個總和數值, 我本身會在下單RULE將數值導出後在除上計算的K線數量,去求出前段的實體波動。 請在程序開頭加上 extern int K線數量 =200;//你要計算的K棒數,任意輸入。 三.馬丁中的手數計算方式 馬丁算是市場上很多人愛用的,我本身是不倡導這種作法,除非你已經做出一支帶停損 停利能獲利的EA,這時候加上馬丁只是在浮虧時增加自己的獲利,我覺得這樣才有意義 馬丁正常才來說會有兩段下單程式,第一段是當場上沒有部位的第一張單, 再來是場上有多張單的加碼,我這邊就直接提供多張單加碼的手數計算方式。 double olot() { double adlot; int ticket = 0; if(CalculateCurrentOrder(Symbol()) >=1)//如果場上大於等於1 { for(int i= OrdersTotal()-1; i>=0; i--) { if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=MAGICMA) continue; if(OrderTicket()>ticket)//如果單子編號大於前一張 { ticket= OrderTicket(); //編號=最大的那張單 adlot = OrderLots() ; //手數=選擇到的最大的那張 } } } return(adlot);//回傳LOT } 這段程式碼搜索場上最新的單子,並回傳他的手數,在馬丁下單的程式碼中, 在呼叫這段函數出來,並乘上你要的倍數,這樣就達到馬丁的效果了。 額外一題常常有人會出現 ORDERSEND ERROR 131,這是因為你的程式計算出來的手數, 可能是個無限小數,或是小數點下超過第二位,因為MT4基本上大多最小0.01手而已, 這時候你要用個程序把導出來的數值縮到小數點下第二位。 double NextLot =NormalizeDouble(olot()*加仓倍数,2);//這就是馬丁了 NormalizeDouble()能夠幫你把數值四捨五入到你要的小數位。 四.計算場上總獲利虧損 這不用多作解釋就是計算未平倉的獲利虧損 double Calculateprofit(string symbol) { int profit = 0; int orderprofit; for(int i=0;i<OrdersTotal();i++) { if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue; if(OrderMagicNumber()==MAGICMA) orderprofit+= OrderProfit(); } return(orderprofit); } 需要的時候在ONTICK裡面做呼叫。 以上就這次分享,一樣有問題可以詢問。 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.38.18
※ 文章網址: https://webptt.com/m.aspx?n=bbs/ForeignEX/M.1500608236.A.FE5.html
1F:→ yzfr6: 又是子函數,講不聽 07/21 13:57
我是不知道這有甚麼差,不知道您為何一直糾結這個問題。 https://zh.wikipedia.org/zh-hant/%E5%AD%90%E7%A8%8B%E5%BA%8F ※ 編輯: n33222 (36.225.38.18), 07/21/2017 14:45:55 ※ 編輯: n33222 (36.225.38.18), 07/21/2017 14:46:18
2F:→ k1dave6412: 你可以打 子程式、函數、方法(針對不同程式語言而有 07/21 16:49
3F:→ k1dave6412: 不同稱呼) 都可以,但是沒有人打子函數… 07/21 16:49
4F:推 wesleytz502: 可以開Mql5的介紹嗎? 07/21 17:51
5F:→ n33222: 好吧下次改進,我會這麼稱呼是因為我前陣子待在中國,教 07/21 18:17
6F:→ n33222: 我的老師也是中國人,他都是這麼稱呼跟我說的,所以我只是 07/21 18:17
7F:→ n33222: 仿照他的說法 07/21 18:17
8F:推 k1dave6412: 中譯的問題很難解決… 除非用英文來解決,這邊應該 07/21 21:25
9F:→ k1dave6412: 都是用 07/21 21:25
10F:→ k1dave6412: function稱呼,method會用在物件導向的程式上(Java) 07/21 21:25
11F:推 k1dave6412: ea的寫法應該是用c語言,所以可以說是function 07/21 21:33
12F:→ n33222: 了解感謝指導 07/21 23:33
13F:推 PsMonkey: 我在對岸也接觸過不少程序員,沒聽過子函數這種說法 07/21 23:35
14F:推 angrywater: Sub Procedure 的意思吧?只是翻譯的問題吧? 07/22 01:01
15F:→ angrywater: MSDN: https://goo.gl/eS96We 07/22 01:02
16F:→ angrywater: 或者是 Sub Function 07/22 01:03
17F:→ angrywater: 字典(子功能、子函數): https://goo.gl/SgJMBL 07/22 01:06
18F:推 labdog: 看的懂就好,何必糾結在一個無聊的名稱。人家肯分享就要 07/22 01:56
19F:→ labdog: 拍拍手了 07/22 01:56
20F:推 ohboy: 感謝分享 不用在意翻譯的事啦^_^ 07/22 02:14
21F:推 ducati5566: 推…意思明白就好,就好像歐巴馬/奧巴馬一樣,知道是O 07/22 13:02
22F:→ ducati5566: bama就好。何必糾結 07/22 13:02
23F:推 nicholasmax: 感謝提供教學期待還有其他的分享 07/22 14:55
24F:推 bxc: 肯分享給推 07/22 16:57
25F:推 contaminate: 那些糾結名稱的人真無聊 推分享 07/25 23:51







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:WOW站內搜尋

TOP