Idea oleh: Vladimir Gribachev.
Kod MQL5 oleh: Vladimir Karputov.
Coin Flip adalah satu EA yang tidak menggunakan sebarang indikator khusus; posisi dibuka secara pseudorandom. EA ini juga boleh menunjukkan statistik semasa dalam dua bahasa:

Trailing mengubah Stop Loss untuk posisi yang dibuka. Jika berlaku kerugian, jumlah lot akan meningkat menggunakan Martingale. Untuk memantau kerugian: Dalam OnTradeTransaction, kita menangkap transaksi DEAL_REASON_SL - tanda Stop Loss telah dicetuskan:
//+------------------------------------------------------------------+ //| Fungsi TradeTransaction | //+------------------------------------------------------------------+ void OnTradeTransaction(const MqlTradeTransaction &trans, const MqlTradeRequest &request, const MqlTradeResult &result) { //--- dapatkan jenis transaksi sebagai nilai enumerasi ENUM_TRADE_TRANSACTION_TYPE type=trans.type; //--- jika transaksi adalah hasil dari penambahan transaksi dalam sejarah if(type==TRADE_TRANSACTION_DEAL_ADD) { long deal_ticket =0; long deal_order =0; long deal_time =0; long deal_time_msc =0; long deal_type =-1; long deal_entry =-1; long deal_magic =0; long deal_reason =-1; long deal_position_id =0; double deal_volume =0.0; double deal_price =0.0; double deal_commission =0.0; double deal_swap =0.0; double deal_profit =0.0; string deal_symbol =""; string deal_comment =""; string deal_external_id =""; if(HistoryDealSelect(trans.deal)) { deal_ticket =HistoryDealGetInteger(trans.deal,DEAL_TICKET); deal_order =HistoryDealGetInteger(trans.deal,DEAL_ORDER); deal_time =HistoryDealGetInteger(trans.deal,DEAL_TIME); deal_time_msc =HistoryDealGetInteger(trans.deal,DEAL_TIME_MSC); deal_type =HistoryDealGetInteger(trans.deal,DEAL_TYPE); deal_entry =HistoryDealGetInteger(trans.deal,DEAL_ENTRY); deal_magic =HistoryDealGetInteger(trans.deal,DEAL_MAGIC); deal_reason =HistoryDealGetInteger(trans.deal,DEAL_REASON); deal_position_id =HistoryDealGetInteger(trans.deal,DEAL_POSITION_ID); deal_volume =HistoryDealGetDouble(trans.deal,DEAL_VOLUME); deal_price =HistoryDealGetDouble(trans.deal,DEAL_PRICE); deal_commission =HistoryDealGetDouble(trans.deal,DEAL_COMMISSION); deal_swap =HistoryDealGetDouble(trans.deal,DEAL_SWAP); deal_profit =HistoryDealGetDouble(trans.deal,DEAL_PROFIT); deal_symbol =HistoryDealGetString(trans.deal,DEAL_SYMBOL); deal_comment =HistoryDealGetString(trans.deal,DEAL_COMMENT); deal_external_id =HistoryDealGetString(trans.deal,DEAL_EXTERNAL_ID); } else return; if(deal_symbol==m_symbol.Name() && deal_magic==m_magic) if(deal_entry==DEAL_ENTRY_OUT) { PrevBars=0; if(deal_reason==DEAL_REASON_SL && deal_commission+deal_swap+deal_profit<0.0) last_lots_sl=deal_volume; else last_lots_sl=0.0; } } }
Parameter Input
- Stop Loss - Stop Loss;
- Take Profit - Take Profit;
- Trailing Stop - trailing;
- Trailing Step - langkah trailing;
- Lots - ukuran lot ditetapkan secara manual (jika Lots lebih besar dari sifar, maka Risk mesti sama dengan sifar);
- Risk - ukuran lot dikira secara automatik (jika Risk lebih besar dari sifar, maka Lots mesti sama dengan sifar);
- Martingale - nisbah peningkatan lot, jika posisi sebelumnya ditutup oleh Stop Loss dan keuntungan yang diperoleh adalah negatif;
- Max lots - saiz posisi maksimum; jika saiz ini melebihi, maka EA akan menghentikan operasinya secara tidak normal;
- magic number - pengenalan unik untuk EA.
Seterusnya, ujian terpaksa dihentikan (EA dimuat turun dari carta secara paksa), kerana ukuran lot rujukan melebihi parameter Max lots:

Siaran berkaitan
- Pemprosesan Pesanan Visual - Sistem Trading untuk MetaTrader 4
- MQL5 Wizard: Cipta Sistem Trading Berdasarkan Pola Morning/Evening Star dan RSI
- MQL5 Wizard: Cipta Isyarat Dagangan Menggunakan Corak Morning/Evening Star dan MFI
- MQL5 Wizard: Sinyal Dagangan Berdasarkan Corak Bintang Pagi/Malam + CCI untuk MetaTrader 5
- Panduan Lengkap MQL5 Wizard untuk Isyarat Dagangan Berdasarkan Morning/Evening Stars dan Stochastic