Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Telegram!
und werden Sie Mitglied unserer Fangruppe
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Bewerten Sie es im Terminal MetaTrader 5
Altarius RSI Stohastic - Experte für den MetaTrader 5
- Veröffentlicht:
- Vladimir Karputov
- Ansichten:
- 782
- Rating:
- Veröffentlicht:
- 2017.03.20 08:48
- Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance
Der EA verwendet zwei Indikatoren iStochastic (Stochastic Oscillator) und einen iRSI (RSI, Relative Strength Index).
Der Autor der Idee — sha, Der Autor des Codes mq5 — barabashkakvn.
Er rechnet den Umfang des Lotes ausgehend von der Analyse der geschlossenen Geschäfte aus:
//+------------------------------------------------------------------+
//| die Berechnung der optimalen Größe des Lotes |
//+------------------------------------------------------------------+
double LotsOptimized()
{
double lot=Lots;
int losses=0; // number of losses deals without a break
//--- select lot size
lot=NormalizeDouble(m_account.FreeMargin()*MaximumRisk/1000.0,2);
//--- calcuulate number of losses orders without a break
if(DecreaseFactor>0)
{
//--- request trade history
HistorySelect(TimeCurrent()-86400,TimeCurrent()+86400);
//---
uint total=HistoryDealsTotal();
//--- for all deals
for(uint i=0;i<total;i++)
{
if(!m_deal.SelectByIndex(i))
{
Print("Error in history!");
break;
}
if(m_deal.Symbol()!=Symbol() || m_deal.Entry()!=DEAL_ENTRY_OUT)
continue;
//---
if(m_deal.Profit()>0)
break;
if(m_deal.Profit()<0)
losses++;
}
if(losses>1)
lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
}
//--- return lot size
if(lot<0.1)
lot=0.1;
return(lot);
}
//| die Berechnung der optimalen Größe des Lotes |
//+------------------------------------------------------------------+
double LotsOptimized()
{
double lot=Lots;
int losses=0; // number of losses deals without a break
//--- select lot size
lot=NormalizeDouble(m_account.FreeMargin()*MaximumRisk/1000.0,2);
//--- calcuulate number of losses orders without a break
if(DecreaseFactor>0)
{
//--- request trade history
HistorySelect(TimeCurrent()-86400,TimeCurrent()+86400);
//---
uint total=HistoryDealsTotal();
//--- for all deals
for(uint i=0;i<total;i++)
{
if(!m_deal.SelectByIndex(i))
{
Print("Error in history!");
break;
}
if(m_deal.Symbol()!=Symbol() || m_deal.Entry()!=DEAL_ENTRY_OUT)
continue;
//---
if(m_deal.Profit()>0)
break;
if(m_deal.Profit()<0)
losses++;
}
if(losses>1)
lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
}
//--- return lot size
if(lot<0.1)
lot=0.1;
return(lot);
}
Die Testergebnisse am EURUSD und USDJPY:
Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/17236
gazonkos
Der EA arbeitet in der Suche des Impulses: iClose(t2)-iClose(t1).
SendCloseDer EA öffnet oder schließt die Positionen bei der Kreuzung der Linien.
2MA_4Level
In der Arbeit des EAs werden die Werte zwei iMA (Moving Average, MA) verwendet.
AutotradeDer EA stellt zwei Pending Order (BuyStop und SellStop) mit der angegebenen Zeit des Ablaufes.