Push Benachrichtigung auf dem Smartphone via MT5 App

 

Hallo Leute,


ich bin auf der Such nach einem Indikator oder vll auch EA welcher mir eine Push benachrichtig auf mein Smartphone sendet.

Diese soll er aber nur senden wenn der Preis ein bestimmtes Level erreicht hat, eine "Alarm Funktion" ist in MT5 bereits vorhanden (rechts auf den Chart, Handel, Alarm).

Kann mir bitte jemand bei dieser Umsetzung helfen ?

 
Hier ist der normale Platz dafür! Lies aber die Regeln!
 

Hi Carl, vielen Dank für diese Information.

Ich hab nun einen Indikator so umprogrammiert das er tut was ich möchte, aber eine Sache bekomme ich nicht hin.

Kann ich die kurz schildern und auf eine Antwort bitten?

 
fim_tim:

Hi Carl, vielen Dank für diese Information.

Ich hab nun einen Indikator so umprogrammiert das er tut was ich möchte, aber eine Sache bekomme ich nicht hin.

Kann ich die kurz schildern und auf eine Antwort bitten?

Sicher kannst Du, wenn du den Code postest bekommst du normalerweise auch unterstützung

 

Alles klar.

Ich hätte gern folgende Funktion;

Wenn ich diesen Indikator aktiviere soll sich die Alarmlinie +20Ppips und -20 Pips vom aktuellen Preis befinden, und diese möchte ich dann auch noch verschieben können.

Im Moment muss ich jedes mal einen Wert eintippen, was umständlich ist.

Was muss ich denn ändern, damit diese Funktion vorhanden ist?


Hier ist der Code.

#property indicator_chart_window

input double AlarmBullish = 0;
input double AlarmBearish = 0;


//Vars to substitute input parameters to be able to modify them
double SWPGB;
double SWPGA;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
void OnInit() 
{
   if (AlarmBullish > 0)
   {
      SWPGA = AlarmBullish;
      ObjectCreate(0, "AlarmBullish", OBJ_HLINE, 0, TimeCurrent(), AlarmBullish);
      ObjectSetInteger(0, "AlarmBullish", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSetInteger(0, "AlarmBullish", OBJPROP_COLOR, Green);
      ObjectSetInteger(0, "AlarmBullish", OBJPROP_WIDTH, 1);
      ObjectSetInteger(0, "AlarmBullish", OBJPROP_SELECTABLE, true);
   }
   if (AlarmBearish > 0)
   {
      SWPGB = AlarmBearish;
      ObjectCreate(0, "AlarmBearish", OBJ_HLINE, 0, TimeCurrent(), AlarmBearish);
      ObjectSetInteger(0, "AlarmBearish", OBJPROP_STYLE, STYLE_SOLID);
      ObjectSetInteger(0, "AlarmBearish", OBJPROP_COLOR, Red);
      ObjectSetInteger(0, "AlarmBearish", OBJPROP_WIDTH, 1);
      ObjectSetInteger(0, "AlarmBearish", OBJPROP_SELECTABLE, true);
   }
}

//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
   ObjectDelete(0, "AlarmBullish");
   ObjectDelete(0, "AlarmBearish");
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
   double Ask = SymbolInfoDouble(_Symbol, SYMBOL_ASK);
   double Bid = SymbolInfoDouble(_Symbol, SYMBOL_BID);
   if ((Ask > SWPGA) && (SWPGA > 0))
   {
      Alert("Alarm Bullish");
      PlaySound("alert.wav");
      SendNotification("UP - " + Symbol()+ " - " + TimeLocal());
      ObjectDelete(0, "AlarmBullish");
      SWPGA = 0;
   }
   if ((Bid < SWPGB) && (SWPGB > 0))
   {
      Alert("Alarm Bearish");
      PlaySound("alert.wav");
      SendNotification("DOWN - " + Symbol()+ " - " + TimeLocal());
      ObjectDelete(0, "AlarmBearish");
      SWPGB = 0;
   }
   return(rates_total);
}

void OnChartEvent(const int id,         
                  const long& lparam,   
                  const double& dparam, 
                  const string& sparam)
{
        if (id != CHARTEVENT_OBJECT_DRAG) return;
        
        double newprice = ObjectGetDouble(0, sparam, OBJPROP_PRICE);
        
        
   if (sparam == "AlarmBullish") SWPGA = newprice;
        else if (sparam == "AlarmBearish") SWPGB = newprice;
}  
//+------------------------------------------------------------------+