Der Indikator hat 4 horizontale Linien - 2 davon arbeiten mit dem Indikator Heiken_Ashi
2 Stufen, von denen aus Sie kaufen oder verkaufen können. Wenn sie sich rot kreuzen, erhalten Sie ein Signal -wenn sie sich blau kreuzen, erhalten Sie ein anderes Signal
-------------
wenn in der Mitte ist (zwischen den Linien (rot und blau) Signale nicht funktionieren - wird funktionieren, wie auf beiden Seiten herauskommen wird
Der Indikator hat 4 horizontale Linien, von denen 2 vom Indikator Heiken_Ashi stammen
2 Stufen, von denen aus Sie kaufen oder verkaufen können. Wenn sie sich rot kreuzen, erhalten Sie ein Signal -wenn sie sich blau kreuzen, erhalten Sie ein anderes Signal
-------------
wenn in der Mitte (zwischen den Linien (rot und blau) Signale nicht funktionieren - wird funktionieren, wie in beide Richtungen gehen
Ich habe den Expert Advisor zu diesem Indikator hinzugefügt
Sie müssen den Indikator auf dem Chart installieren und dann den Expert Advisor auf demselben Chart installieren.
---------------------
nach dem Öffnen einer Position wurde der Indikator gelöscht. nach einer Weile habe ich den Indikator wieder gesetzt (wie kann ich die Arbeit des Experten überprüfen)
---------------
wenn ein Signal ausgelöst wird, öffnet eine Position und löscht den Indikator zusammen mit den Linien
Помощник закрытия позиции, если цена пересекла линию: Правило закрытия: цена Open и цена Close текущего бара должны оказаться по разные стороны от линии. Имя линии задаётся в параметре "Line name" - эту линию пользователь проводит сам. Тип линии может быть...
//+------------------------------------------------------------------+//| Enum Lor or Risk |//+------------------------------------------------------------------+enum ENUM_TRADE_COMMAND
{
close_buys=0, // Close All Buy's
close_sells=1, // Close All Sell's
close_all=2, // Close All Buy's and Sell's
open_buy=3, // Open Buy
open_sell=4, // Open Sell
open_buy_sell=5, // Open Buy and Sell
};
//--- input parametersinputuint maxLimits = 1; // Кол-во Позиции Открыть в одну сторонуinputdouble InpLots = 0.01; // Lotsinputushort InpSignalsFrequency = 10; // Search signals, in seconds (min value "10")inputstring InpNameR = "LineR"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandR = close_all; // Trade command:inputbool ObjRevers = false; // Obj: Reversinputstring InpNameS = "LineS"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandS = close_all; // Trade command:inputulong InpMagic = 78712995; // Magic number//---
//+------------------------------------------------------------------+//| Get value of buffers |//+------------------------------------------------------------------+double iGetArray(constint handle,constint buffer,constint start_pos,constint count,double &arr_buffer[])
{
bool result=true;
if(!ArrayIsDynamic(arr_buffer))
{
Print("This a no dynamic array!");
return(false);
}
ArrayFree(arr_buffer);
//--- reset error codeResetLastError();
//--- fill a part of the iBands array with values from the indicator bufferint copied=CopyBuffer(handle,buffer,start_pos,count,arr_buffer);
if(copied!=count)
{
//--- if the copying fails, tell the error codePrintFormat("Failed to copy data from the indicator, error code %d",GetLastError());
//--- quit with zero result - it means that the indicator is considered as not calculatedreturn(false);
}
return(result);
}
//+------------------------------------------------------------------+//| Search trading signals |//+------------------------------------------------------------------+bool SearchTradingSignals(void)
{
//--- we work only at the time of the birth of new bardatetime time_0=iTime(m_symbol.Name(),Period(),0);
if(time_0==ExtPrevBarsY)
return(true);
ExtPrevBarsY=time_0;
if(!m_symbol.RefreshRates())
{
ExtPrevBarsY=0;
return(false);
}
//---double BuyBuffer[];
double SellBuffer[];
ArraySetAsSeries(BuyBuffer,true);
ArraySetAsSeries(SellBuffer,true);
if(!iGetArray(handle_iCustom,1,0,2,BuyBuffer) || !iGetArray(handle_iCustom,0,0,2,SellBuffer))
{
ExtPrevBarsY=0;
return(false);
}
//---if(BuyBuffer[1]!=0.0)
{
switch(InpTradeCommandY)
{
case close_buys:
ExtNeedCloseBuy=true;
if(LongObjClosed())
break;
case close_sells:
ExtNeedCloseSell=true;
if(ShortObjClosed())
break;
case close_all:
ExtNeedCloseAll=true;
if(LongShortObjClosed())
break;
case open_buy:
ExtNeedOpenBuy=true;
if(LongObjOpened())
break;
case open_sell:
ExtNeedOpenSell=true;
if(ShortObjOpened())
break;
default:
ExtNeedOpenBuySell=true;
if(LongShortObjOpened())
break;
}
}
if(SellBuffer[1]!=0.0)
{
switch(InpTradeCommandU)
{
case close_buys:
ExtNeedCloseBuy=true;
if(LongObjClosed())
break;
case close_sells:
ExtNeedCloseSell=true;
if(ShortObjClosed())
break;
case close_all:
ExtNeedCloseAll=true;
if(LongShortObjClosed())
break;
case open_buy:
ExtNeedOpenBuy=true;
if(LongObjOpened())
break;
case open_sell:
ExtNeedOpenSell=true;
if(ShortObjOpened())
break;
default:
ExtNeedOpenBuySell=true;
if(LongShortObjOpened())
break;
}
}
//---return(true);
}
//+------------------------------------------------------------------+
Jetzt in den Einstellungen
//--- input parametersinputuint maxLimits = 1; // Кол-во Позиции Открыть в одну сторонуinputdouble InpLots = 0.01; // Lotsinputushort InpSignalsFrequency = 10; // Search signals, in seconds (min value "10")inputstring InpNameR = "LineR"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandR = open_buy; // Trade command:inputstring InpNameS = "LineS"; // Line name (Horizontal Line or Trend Line)input ENUM_TRADE_COMMAND InpTradeCommandS = open_sell; // Trade command:inputstring short_name = "Examples\\ZigzagColor"; // Name Indicatorsinput ENUM_TRADE_COMMAND InpTradeCommandY = open_buy; // Trade command: (BuyBuffer Indicators)input ENUM_TRADE_COMMAND InpTradeCommandU = open_sell; // Trade command: (SellBuffer Indicators)inputbool ObjRevers = false; // Obj: Revers//---
Trailing Stop auch bei horizontalen Linien hinzugefügt. Ich glaube, ich habe alles hinzugefügt, jetzt muss ich nur noch überprüfen, ob es funktioniert.
Hier sind die Einstellungen
Das Prinzip der Arbeit, hier diese Parameter.
Wenn die Fonds ein bestimmtes Ziel erreichen, werden alle Positionen für alle offenen Paare geschlossen, und alle Charts wechseln in das "ADX"-Muster .
(Es ist wichtig - es ist obligatorisch, dass Zahlen über Ihrem Saldo in den Einstellungen geschrieben werden) und Expert Advisor wird alle geöffneten Positionen schließen und die Charts der Vorlage ändern
In der Code Base gibt es derzeit eine Vielzahl ähnlicher Indikatoren, für die Zwecke dieses Artikels werde ich nur einige Links zu den Quellressourcen angeben:
Aus dem Indikator, öffnet nur Positionen, zu schließen, nahm ich den Weg von der Expert Advisor im Terminal (Moving Average)
Ich habe den Rückwärtsgang ein wenig verbessert
Ich mag es nicht, wenn ich eine Position schließe. Ich suche nach einer Möglichkeit, die Funktion zum Schließen einer Position aus einem Indikator zu korrigieren
Der Indikator hat 4 horizontale Linien - 2 davon arbeiten mit dem Indikator Heiken_Ashi
2 Stufen, von denen aus Sie kaufen oder verkaufen können. Wenn sie sich rot kreuzen, erhalten Sie ein Signal -wenn sie sich blau kreuzen, erhalten Sie ein anderes Signal
-------------
wenn in der Mitte ist (zwischen den Linien (rot und blau) Signale nicht funktionieren - wird funktionieren, wie auf beiden Seiten herauskommen wird
Der Indikator hat 4 horizontale Linien, von denen 2 vom Indikator Heiken_Ashi stammen
2 Stufen, von denen aus Sie kaufen oder verkaufen können. Wenn sie sich rot kreuzen, erhalten Sie ein Signal -wenn sie sich blau kreuzen, erhalten Sie ein anderes Signal
-------------
wenn in der Mitte (zwischen den Linien (rot und blau) Signale nicht funktionieren - wird funktionieren, wie in beide Richtungen gehen
Ich habe den Expert Advisor zu diesem Indikator hinzugefügt
Sie müssen den Indikator auf dem Chart installieren und dann den Expert Advisor auf demselben Chart installieren.
---------------------
nach dem Öffnen einer Position wurde der Indikator gelöscht. nach einer Weile habe ich den Indikator wieder gesetzt (wie kann ich die Arbeit des Experten überprüfen)
---------------
wenn ein Signal ausgelöst wird, öffnet eine Position und löscht den Indikator zusammen mit den Linien
Kombinierte zwei Experten für den manuellen Handel
diesehttps://www.mql5.com/ru/code/24803
und diese hierhttps://www.mql5.com/ru/code/26353
Kombinierte zwei Experten für den manuellen Handel
diesehttps://www.mql5.com/ru/code/24803
und diese hierhttps://www.mql5.com/ru/code/26353
Eine weitere Zeile hinzugefügt
Eine weitere Zeile hinzugefügt.
Für einen vollwertigen Experten, der fehlt -
1 - Stop Loss , Take Profit in Pips (nicht sichtbar)
2 - Trailing Stop ab horizontaler Linie
3 - Signal des Anzeigers
Ich werde den Expert Advisor2_LineOpenClose.mq5 weiter modifizieren
Für einen vollwertigen Experten, der fehlt -
1 - Stop Loss , Take Profit in Pips (nicht sichtbar)
2 - Trailing Stop von horizontalen Linien
3 - Das Signal des Indikators
Ich werde den Expert Advisor2_LineOpenClose.mq5 weiter modifizieren
Hinzugefügt - Signal von Indikator
auf diese Weise
Jetzt in den Einstellungen
Überprüfung eines Blinkersignals
Für einen vollwertigen Experten, der fehlt -
1 - Stop Loss , Take Profit in Pips (nicht sichtbar)
2 - Trailing Stop von horizontalen Linien
3 - Das Signal des Indikators
Ich werde die Feinabstimmung des Expert Advisor2_LineOpenClose.mq5
Ich habe auchTrailing Stop von der horizontalen Linie hinzugefügt. Ich habe sozusagen alles hinzugefügt und überprüfe jetzt die Funktionsfähigkeit.
Hier sind die Einstellungen
Trailing Stop auch bei horizontalen Linien hinzugefügt. Ich glaube, ich habe alles hinzugefügt, jetzt muss ich nur noch überprüfen, ob es funktioniert.
Hier sind die Einstellungen
Das Prinzip der Arbeit, hier diese Parameter.
Wenn die Fonds ein bestimmtes Ziel erreichen, werden alle Positionen für alle offenen Paare geschlossen, und alle Charts wechseln in das "ADX"-Muster .
(Es ist wichtig - es ist obligatorisch, dass Zahlen über Ihrem Saldo in den Einstellungen geschrieben werden) und Expert Advisor wird alle geöffneten Positionen schließen und die Charts der Vorlage ändern
-------------------------------------------------------------
Losparameter.
können Sie eine Position als 0,06 oder eine Anzahl von Positionen als 6 bei 0,01 einstellen
---------------------------------------------------------------
Parameter mit Take ProfitT.
Es wird durch die Anzahl der Pips ausgelöst (wenn es "0" ist, wird die Position geschlossen), ist es notwendig, den Abstand anzugeben.
XXX_Schleppende Linie.mq5
Hinzugefügt - Signal von Indikator
wie diese.
In den Einstellungen sieht es jetzt so aus
Prüfen des Signals vom Indikator
Der Indikator öffnet nur Positionen zu schließen, nahm ich es aus dem Expert Advisor im Terminal (Moving Average)
Ich habe ein wenig Umkehrung bestraft
Das einfachste Handelssystem mit Semaphor-Indikatoren
Beispiele für typische Semaphoren, Signalanzeiger
In der Code Base gibt es derzeit eine Vielzahl ähnlicher Indikatoren, für die Zwecke dieses Artikels werde ich nur einige Links zu den Quellressourcen angeben:
Aus dem Indikator, öffnet nur Positionen, zu schließen, nahm ich den Weg von der Expert Advisor im Terminal (Moving Average)
Ich habe den Rückwärtsgang ein wenig verbessert
Ich mag es nicht, wenn ich eine Position schließe. Ich suche nach einer Möglichkeit, die Funktion zum Schließen einer Position aus einem Indikator zu korrigieren
-------------------------------------------------------------------
Ich habe das Problem behoben und den Indikator Gleitender Durchschnitt hinzugefügt.
und in OnTick()
es stellt sich heraus, dassSelectPosition() durch sie hindurchgehen sollte