Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools  
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4294
Beiträge: 39577
Benutzer: 6.606
Aktive Benutzer: 223
Links: 80
Wir begrüßen unseren neuesten Benutzer: dellinger
Mit 1.311 Benutzern waren die meisten Benutzer gleichzeitig online (vor 2 Tagen um 01:18).
Neue Benutzer:
vor 3 Tagen
- dellinger
vor 5 Tagen
- SABA
vor 5 Tagen
- artfeld
vor 5 Tagen
- sonnejian
vor 5 Tagen
- SchneiderB...

Onlineuser
'Wer ist online' anzeigen Benutzer: 0
Gäste: 127
Gesamt: 127
Team: 0
Team:  
Benutzer:  
Freunde anzeigen

Empfehlungen

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt vor einer Woche
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 112
Max2018 befindet sich auf einem aufstrebenden Ast
Standard Pfeile keine Objekte

Hallo,

dieser "Markt" Indikator
https://www.mql5.com/de/market/product/33075#

zeichnet Signale in Form von Pfeilen in den Chart.
ABER diese Pfeile sind keine Objekte! (siehe Foto)

FRAGE 1: Was ist das und wie kann man solche Pfeile als Signal auslesen?
FRAGE 2: Kann man den Code von so einem Indikator der von der Marktplattform "MetaTrader" bereit gestellt wird irgendwie als mql4 auslesen?

Mit Zitat antworten
  #2 (permalink)  
Alt vor einer Woche
AVT AVT ist offline
Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 211
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Max2018 Beitrag anzeigen
...
zeichnet Signale in Form von Pfeilen in den Chart.
ABER diese Pfeile sind keine Objekte! (siehe Foto)
FRAGE 1: Was ist das und wie kann man solche Pfeile als Signal auslesen?
Mach' mal das (Ansicht ->) Datenfenster auf. Da siehst Du die Buffer für die einzelnen Dinger.
Zitat:
Zitat von Max2018 Beitrag anzeigen
FRAGE 2: Kann man den Code von so einem Indikator der von der Marktplattform "MetaTrader" bereit gestellt wird irgendwie als mql4 auslesen?
So was nennt man Dekompilieren und "Das tut man nicht!" und zwar deshalb, weil Programmierer oft viel Arbeit in etwas stecken; wenn Sie OpenSource Fans sind, wird der Code unter einer Lizenz veröffentlicht, wenn nicht, dann sollte man das respektieren. AVT
Mit Zitat antworten
  #3 (permalink)  
Alt vor einer Woche
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 112
Max2018 befindet sich auf einem aufstrebenden Ast
Standard

zu 1.) Danke. Im Datenfenster habe ich das Signal gefunden.
zu 2.) Stimmt, das sehe ich auch so..... Mir ging es nur um die Frage, wie ein Objekt erzeugt werden kann, was man dann aber nicht in der Objektliste sehen kann......
Mit Zitat antworten
  #4 (permalink)  
Alt vor einer Woche
AVT AVT ist offline
Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 211
AVT befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Max2018 Beitrag anzeigen
Mir ging es nur um die Frage, wie ein Objekt erzeugt werden kann, was man dann aber nicht in der Objektliste sehen kann......
über Buffer so (haste lauter Bomben im Chart):
Code:
//=============================================================================
#property copyright   "© BigSister"
#property description "object demo"
#property strict

#property indicator_chart_window

#property indicator_buffers 3
#property indicator_color1 clrGold       // object
#property indicator_width1 2 
#property indicator_color2 clrLimeGreen  // faster line
#property indicator_color3 clrMagenta    // slower line

//=============================================================================
extern int    EMA1peri     = 10;    // Ema1 Period
extern int    EMA2peri     = 20;    // Ema2 Period
extern int    WinDiNo      = 77;    // Wingdings Symbol number
extern bool   ShowLines    = false; // Show lines

//=============================================================================
// --- buffers 
double Ema1Buff[];
double Ema2Buff[];
double ObjectBuff[];

//=============================================================================
int OnInit(void)
{
   IndicatorDigits(Digits);
   IndicatorShortName("DemoOBJ");
   
   IndicatorBuffers(3);
   
   SetIndexBuffer(0,ObjectBuff);                     // signal object
   SetIndexLabel(0,"Object");
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,WinDiNo);
   
   SetIndexBuffer(1,Ema1Buff);                       // faster line
   SetIndexLabel(1,"Ema1");
   if(ShowLines==true) SetIndexStyle(1,DRAW_LINE);
   else                SetIndexStyle(1,DRAW_NONE);
   
   SetIndexBuffer(2,Ema2Buff);                       // slower line
   SetIndexLabel(2,"Ema2");
   if(ShowLines==true) SetIndexStyle(2,DRAW_LINE);
   else                SetIndexStyle(2,DRAW_NONE);
   
   return(INIT_SUCCEEDED);
}

//=============================================================================
void OnDeinit(const int reason)
{
   // == print code why we were deinitialized
   Print(__FUNCTION__," DeInit reason code = ",reason);
}

//=============================================================================
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[])
{
   
   int limit=rates_total-prev_calculated;
   if(prev_calculated>0) limit++;
   limit=Bars-MathMax(EMA1peri,EMA2peri);
   
   for(int i=limit; i>0; i--) 
   {
      Ema1Buff[i]=iMA(NULL,0,EMA1peri,0,MODE_EMA,PRICE_CLOSE,i);
      Ema2Buff[i]=iMA(NULL,0,EMA2peri,0,MODE_EMA,PRICE_CLOSE,i);
    
      if     (   Ema1Buff[i+1]>=Ema2Buff[i+2]  //previous 1above2 now 1below2
              && Ema1Buff[i]<=Ema2Buff[i+1] )  ObjectBuff[i]=Ema1Buff[i+1];
      else if(   Ema1Buff[i+1]<=Ema2Buff[i+2]  // previous 1below2 now 1above2
              && Ema1Buff[i]>=Ema2Buff[i+1])   ObjectBuff[i]=Ema1Buff[i+1];
      else                                     ObjectBuff[i]=EMPTY_VALUE;
  }
   
   //== return the value of prev_calculated for next call
   return(rates_total);
}
//=============================================================================
Mit Zitat antworten
  #5 (permalink)  
Alt vor einer Woche
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 112
Max2018 befindet sich auf einem aufstrebenden Ast
Standard

Aaah ok - Danke
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
pfeile keine objekte


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +2. Es ist jetzt 07:03 Uhr.


Der Wavesnode - Spam Firewall
-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2019 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2017 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------