[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 790

 
obla4ko:

Das ist seltsam. Du meinst Momentum, was hat das mit Mashka zu tun?

Wie wäre es damit?

double iMomentum( string symbol, int timeframe, int period, int applied_price, int shift)
 
artmedia70:

Das ist seltsam. Sie meinen Momentum, was hat das mit Mashka zu tun?

Wie wäre es damit?

double iMomentum( string symbol, int timeframe, int period, int applied_price, int shift)
Ich bin eigentlich sagen, die gleiche Sache - nur in MT4-Momentum (siehe Code oben) NO(!!! )
double iMomentum()

...... und es stellt sich die Frage, wo und wie man sie unterbringen kann.

String-Symbol
in den bestehenden mt4-motroom-Code einfügen, wenn es keine
double iMomentum()

...

schreiben Sie es erneut auf der Grundlage von

double iMomentum()

oder kann es in den bestehenden Code geschrieben werden!

 
obla4ko:
Ich meine eigentlich das Gleiche - nur im MT4-Momentum (siehe Code oben) NEIN(!!!)

Ehrlich gesagt, verstehe ich die Frage auch nicht.

double iMomentum( string symbol, int timeframe, int period, int applied_price, int shift) 
Funktioniert es nicht oder was?
 
Abzasc:

Um ehrlich zu sein, verstehe ich die Frage auch nicht.

Funktioniert das nicht?

Ich brauche den Eura-Schwung, um ihn an das Pfund-Fenster zu hängen! - und wenn Sie das Symbol nicht separat schreiben, wird es standardmäßig der Währung zugeordnet, mit der es im Fenster angezeigt wird... Ich verstehe, warum ich dieses Zeug so sehr brauche :))?
 
Überlegen wir gemeinsam, wo im Code ein Symbol stehen könnte? Ein kurzer Blick zeigt uns, dass außer Close[i] keine Preisparameter im Code verwendet werden. Wir sehen in der Referenz Close[] nach und stellen fest, dass diese Zeitreihe der Schlusskurs des aktuellen Symbols ist. Aber eine andere Zeitreihe, iClose( string symbol, int timeframe, int shift) ermöglicht es uns, Daten von dem angegebenen Symbol zu erhalten. Ersetzen Sie also Close[i] im Code durch iClose( _Symbol, 0, i) und geben Sie die externe Variable extern string _Symbol="EURUSD" ein ; setzen Sie den Wert des gewünschten Symbols darin und genießen Sie das Ergebnis. Ich habe es nicht getestet, aber es sollte funktionieren.
 
granit77:
Überlegen wir gemeinsam, wo im Code ein Symbol vorkommen kann? Bei flüchtiger Betrachtung wird deutlich, dass außer Close[i] keine weiteren Preisparameter verwendet werden. Schauen wir uns Close[] in der Referenz an und stellen fest, dass diese Zeitreihe der Schlusskurs des aktuellen Symbols ist. Aber eine andere Zeitreihe, iClose( string symbol, int timeframe, int shift) ermöglicht es uns, Daten von dem angegebenen Symbol zu erhalten. Ersetzen Sie also Close[i] im Code durch iClose( _Symbol, 0, i) und geben Sie die externe Variable extern string _Symbol="EURUSD" ein ; setzen Sie den Wert des gewünschten Symbols darin und genießen Sie das Ergebnis. Ich habe es nicht überprüft, aber es sollte funktionieren.


Es ist nicht ganz so. Wie immer steckt der Teufel in den Nuancen".

Wenn Sie versuchen, einen Indikator anzuzeigen, der auf den Balken eines anderen Symbols auf dem aktuellen Symbol basiert, müssen Sie darauf achten, dass die Balken übereinstimmen.

D.h. die Balken-Nummern für dieselbe Zeit für verschiedene Symbole sind möglicherweise nicht dieselben.

 
obla4ko:
Ich brauche den eura momentum, um ihn an das Pfundfenster zu hängen! - Und wenn Sie das Symbol nicht separat schreiben, wird es standardmäßig der Währung zugeordnet, mit der es im Fenster angezeigt wird... Ich verstehe, warum ich dieses Zeug so sehr brauche :))?

Ah, ich dachte, die Daten müssten herausgezogen werden...

Ich weiß nicht, ich würde einen Indikator erstellen und Daten über iMomentum in diesen ziehen... oder vielleicht iMomentumOnArray

 
PapaYozh:


Nicht wirklich. Wie immer liegt der Teufel in den Nuancen".

Wenn Sie versuchen, einen Indikator anzuzeigen, der auf den Balken eines anderen Symbols auf dem aktuellen Symbol basiert, müssen Sie darauf achten, dass die Balken übereinstimmen.

D.h. die Balken-Nummern für dieselbe Zeit für verschiedene Symbole können nicht übereinstimmen.

Wo sind Sie schon einmal gewesen? Sie haben Recht. Ich habe es hinzugefügt, es funktioniert.

//+------------------------------------------------------------------+
//|                                                     Momentum.mq4 |
//|                      Copyright © 2004, MetaQuotes Software Corp. |
//|                                       http://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net/"

#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 DodgerBlue
//---- input parameters
extern int     MomPeriod = 14;
extern string  _Symbol   = "EURUSD"; 
//---- buffers
double MomBuffer[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   string short_name;
//---- indicator line
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,MomBuffer);
//---- name for DataWindow and indicator subwindow label
   short_name="Mom("+MomPeriod+")";
   IndicatorShortName(short_name);
   SetIndexLabel(0,short_name);
//----
   SetIndexDrawBegin(0,MomPeriod);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Momentum                                                         |
//+------------------------------------------------------------------+
int start()
  {
   int i,counted_bars=IndicatorCounted();
   
//----
   if(Bars<=MomPeriod) return(0);
//---- initial zero
   if(counted_bars<1)
      for(i=1;i<=MomPeriod;i++) MomBuffer[Bars-i]=0.0;
      
//----
   
   i=Bars-MomPeriod-1;
   if(counted_bars>=MomPeriod) i=Bars-counted_bars-1;
   while(i>=0)
     {
      int baropen =iBarShift(_Symbol,0,Time[i]);
      int barclose=iBarShift(_Symbol,0,Time[i+MomPeriod]);
      MomBuffer[i]=iClose(_Symbol,0,baropen) *100/iClose(_Symbol,0,barclose);
      i--;
     }
   return(0);
  }
 
granit77:

Wo sind Sie schon einmal gewesen? Sie haben Recht. Ich habe es hinzugefügt, es funktioniert.


Gut gemacht, Victor!
Und die Wolke ist still... :))
 
granit77:

Wo sind Sie schon einmal gewesen? Das ist wahr. Ich habe es hinzugefügt, es funktioniert.


Nun, ich habe manchmal ein Auge auf diesen Thread und antworte manchmal.

Also "Entschuldigung", sozusagen mithelfen, so viel wie möglich.

:)