Ho pubblicato quello che ho per il momento. Attualmente lo sto ancora testando. Ho in mente alcuni cambiamenti, ma aiuterà avere l'EA. CLICCA QUI: Messaggio #49Originariamente Scritto da ;
https://www.forexmad.com/cryptocurre...-trailing.html
Publi |
Publi |
Ho pubblicato quello che ho per il momento. Attualmente lo sto ancora testando. Ho in mente alcuni cambiamenti, ma aiuterà avere l'EA. CLICCA QUI: Messaggio #49Originariamente Scritto da ;
https://www.forexmad.com/cryptocurre...-trailing.html
Codice inserito/ -------------------------------------------- --------------------- /| CloseTrades_After_Account_Loss_TooMuch.mq4 |/| Copyright © 2007, Tradinatore |/| [email protected] |/ ----------------------------------------------- ------------------- #property copyright Copyright © 2007, Tradinator #property link [email protected] extern double Percent_Win= 1;/ ----------------------------------------------- ---------------------- /extern double Open_Loss_To_CloseTrades=-1000;/|La quantità di denaro alla quale vuoi subire una perdita close ALL |/|negozi aperti. ad esempio se la perdita fluttuante nel tuo conto raggiunge o va |/|oltre -$1000 allora TUTTE le posizioni aperte nel tuo conto saranno |/|chiuso. |/ ----------------------------------------------- ---------------------- extern double Percent_Loss = 1;/ ----------------------------------------------- ---------------------- /extern double Open_Loss_To_CloseTrades=-1000;/|La quantità di denaro alla quale vuoi subire una perdita close ALL |/|negozi aperti. ad esempio se la perdita fluttuante nel tuo conto raggiunge o va |/|oltre -$1000 allora TUTTE le posizioni aperte nel tuo conto saranno |/|chiuso. |/ ----------------------------------------------- ---------------------- int Slittamento=5; int io;/ ----------------------------------------------- ------------------- /| funzione di inizializzazione esperto |/ ----------------------------------------------- ------------------- int init() {/----/---- return(0); }/ ---------------------------------------------- -------------------- /| funzione di deinizializzazione esperta |/ ----------------------------------------------- ------------------- int deinit() {/----/---- return(0); }/ ---------------------------------------------- -------------------- /| funzione di avvio esperto |/ ----------------------------------------------- ------------------- int start() { double My_Percent_Profit1 = Percent_Win100; DoppioMy_Money_Profit_Target1 = AccountBalance() * My_Percent_Profit1; if (AccountProfit()gt;= My_Money_Profit_Target1) { for(i=OrdersTotal()-1;igt;=0;i--) { OrderSelect(i, SELECT_BY_POS); int tipo1 = TipoOrdine(); bool risultato1 = falso; switch(type1) {/Chiudi il caso delle posizioni long aperte OP_BUY : result1 = OrderClose(OrderTicket(),OrderLots(),MarketInfo(Or derSymbol(),MODE_BID),Slippage,Pink); rottura;/Chiudi il caso delle posizioni short aperte OP_SELL : result1 = OrderClose(OrderTicket(),OrderLots(),MarketInfo(Or derSymbol(),MODE_ASK),Slippage,Pink); rottura;/Chiude gli ordini in sospeso case OP_BUYLIMIT : case OP_BUYSTOP : case OP_SELLLIMIT : case OP_SELLSTOP : result1 = OrderDelete( OrderTicket() ); } if(risultato1 == falso) { Sleep(3000); } } Print (limite limite account raggiunto. Tutte le negoziazioni aperte sono state chiuse); ritorno(0); } Comment(Saldo: ,AccountBalance(),, Capitale del conto: ,AccountEquity(),, Profitto del conto: ,AccountProfit(), nLimite di profitto del mio conto: ,My_Money_Profit_Target1); double My_Percent_Profit2 = -1 * Percent_Loss100; double My_Money_Profit_Target2 = AccountBalance() * My_Percent_Profit2; if (AccountProfit()lt;= My_Money_Profit_Target2) { for(i=OrdersTotal()-1;igt;=0;i--) { OrderSelect(i, SELECT_BY_POS); int tipo2 = TipoOrdine(); bool risultato2 = falso; switch(type2) {/Chiudi le posizioni long aperte caso OP_BUY : result2 = OrderClose(OrderTicket(),OrderLots(),MarketInfo(Or derSymbol(),MODE_BID),Slippage,Pink); rottura;/Chiudi il caso delle posizioni short aperte OP_SELL : result2 = OrderClose(OrderTicket(),OrderLots(),MarketInfo(Or derSymbol(),MODE_ASK),Slippage,Pink); rottura;/Chiude gli ordini in sospeso case OP_BUYLIMIT : case OP_BUYSTOP : case OP_SELLLIMIT : case OP_SELLSTOP : result2 = OrderDelete( OrderTicket() ); } if(risultato2 == falso) { Sleep(3000); } } Print (nnLimite limite account raggiunto. Tutte le negoziazioni aperte sono state chiuse); ritorno(0); } Comment(nnnBalance: ,AccountBalance(),, Capitale del conto: ,AccountEquity(),, Profitto del conto: ,AccountProfit(), nLimite limite del mio conto: ,My_Money_Profit_Target2); ritorno(0); }