Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 4 > Programmierung MQL4
Startseite Registrieren Hilfe Community Kalender Heutige Beiträge Suchen

Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4.

Login
Benutzername:
Kennwort:


Statistik
Themen: 4978
Beiträge: 43264
Benutzer: 7.223
Aktive Benutzer: 73
Links: 84
Wir begrüßen unseren neuesten Benutzer: TS_6
Mit 2.475 Benutzern waren die meisten Benutzer gleichzeitig online (16.01.20 um 22:38).
Neue Benutzer:
vor 6 Stunden
- TS_6
vor 2 Tagen
- Mane
vor 2 Wochen
- AlbertZiz
vor 2 Wochen
- michak
vor 2 Wochen
- Amateur

Onlineuser
'Wer ist online' anzeigen Benutzer: 1
Gäste: 320
Gesamt: 321
Team: 0
Team:  
Benutzer:  traderdoc
Freunde anzeigen

Empfehlungen

Thema geschlossen
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 04.09.19
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 238
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?

  #2 (permalink)  
Alt 04.09.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
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
  #3 (permalink)  
Alt 04.09.19
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 238
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......
  #4 (permalink)  
Alt 04.09.19
AVT AVT ist offline
Elite Mitglied
 
Registriert seit: Mar 2018
Ort: Hamburg
Beiträge: 612
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);
}
//=============================================================================
  #5 (permalink)  
Alt 04.09.19
Mitglied
 
Registriert seit: Sep 2018
Beiträge: 238
Max2018 befindet sich auf einem aufstrebenden Ast
Standard

Aaah ok - Danke
Thema geschlossen

Lesezeichen

Stichworte
pfeile keine objekte


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 18:07 Uhr.





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