Indikatoren: Open Interest - Seite 7

 
Beispiel
Dateien:
tik1.jpg  198 kb
tik2.jpg  194 kb
tik3.jpg  190 kb
 
miillad:
Beispiel

1. Пожалуйста ВСТАВЛЯЙТЕ картинку. ПРИКРЕПЛЯТЬ картинку - неправильное действие.

2. Я в пятый раз прошу Вас: "Покажи код, с помощью которого Вы выводите на экран данные".

 
Vladimir Karputov:

1. Пожалуйста ВСТАВЛЯЙТЕ картинку. ПРИКРЕПЛЯТЬ картинку - неправильное действие.

2. Я в пятый раз прошу Вас: "Покажи код, с помощью которого Вы выводите на экран данные".

//+------------------------------------------------------------------+
//|Offenes Interesse.mq5 |
//|Copyright © 2016, Vladimir Karputov |
//| http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2016, Vladimir Karputov"
#property link      "http://wmua.ru/slesar/"
#property version   "1.001"
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_plots   2
//--- Plot Max
#property indicator_label1  "Interest Max"
#property indicator_type1   DRAW_HISTOGRAM2
#property indicator_color1  clrBlue
#property indicator_style1  STYLE_SOLID
#property indicator_width1  3
//--- plot Сurrent
#property indicator_label2  "Interest Min"
#property indicator_type2   DRAW_HISTOGRAM2
#property indicator_color2  clrRed
#property indicator_style2  STYLE_SOLID
#property indicator_width2  3
//--- Indikatorpuffer
double         BufferMaxUp[];
double         BufferMaxDown[];
double         BufferMinUp[];
double         BufferMinDown[];
//---
datetime       StartDate=0;
//+------------------------------------------------------------------+
//| Benutzerdefinierte Initialisierungsfunktion für Indikatoren |
//+------------------------------------------------------------------+
int OnInit()
  {
   Print(__FUNCTION__);
//--- Zuordnung von Indikatorpuffern
   SetIndexBuffer(0,BufferMaxUp,INDICATOR_DATA);
   SetIndexBuffer(1,BufferMaxDown,INDICATOR_DATA);
   SetIndexBuffer(2,BufferMinUp,INDICATOR_DATA);
   SetIndexBuffer(3,BufferMinDown,INDICATOR_DATA);
   ArraySetAsSeries(BufferMaxUp,true);
   ArraySetAsSeries(BufferMaxDown,true);
   ArraySetAsSeries(BufferMinUp,true);
   ArraySetAsSeries(BufferMinDown,true);
//---
   PlotIndexSetDouble(0,PLOT_EMPTY_VALUE,0);
   PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,0);
   PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,0);
   PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,0);
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Benutzerdefinierte Indikator-Iterationsfunktion|
//+------------------------------------------------------------------+
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[])
  {
   if(prev_calculated==0)
     {
      Print("prev_calculated==0, StartDate=",StartDate);
      if(StartDate<D'2015.01.01 00:00')
        {
         StartDate=TimeCurrent();
        }
      else
        {
         return(rates_total);
        }
     }
//---
   double interest=SymbolInfoDouble(Symbol(),SYMBOL_SESSION_INTEREST);
   Comment("Open interest= ",interest);
//---
   int limit=rates_total-prev_calculated;
   for(int i=0;i<limit;i++) // в случае когда prev_calculated==0 или когда limit>1
     {
      BufferMaxUp[i]=interest;
      BufferMaxDown[i]=interest;
      BufferMinUp[i]=interest;
      BufferMinDown[i]=interest;
     }
//---
   if(interest>BufferMaxUp[0])
     {
      BufferMaxUp[0]=interest;
     }
   if(interest<BufferMinDown[0])
     {
      BufferMinDown[0]=interest;
     }
//--- Rückgabe des Wertes von prev_calculated für den nächsten Aufruf
   return(rates_total);
  }
//+------------------------------------------------------------------+
 

@Vladimir Karputov

Ich habe gefragt, Sie haben die Frage ignoriert. Ich frage noch einmal.

Wie ich es verstanden habe, wird beim Wechsel der TF auf dem Chart die gesamte Historie der Handelssitzung zurückgesetzt? bx, Eröffnung...das gleiche - fängt wieder von vorne an! ist das so beabsichtigt?

Mit freundlichen Grüßen

[Gelöscht]  
motoRND:

@Vladimir Karputov

Sie haben die Frage ignoriert. Ich wiederhole.

so wie ich es verstanden habe, wird beim Wechsel der TF auf dem Chart die gesamte Historie der Handelssitzung zurückgesetzt... bx, Eröffnung... das gleiche - beginnt von vorne! ist das so konzipiert?

Sv

Ich bin natürlich nicht Vladimir, aber ja, so ist es gedacht. Es wird nichts in die Datei geschrieben!

 

Dieser Indikator ist sehr langsam - ich weiß nicht, was ihn verlangsamt, aber es ist eine Tatsache.

Was das Schreiben in eine Datei anbelangt, wäre es natürlich gut, sie zu schreiben, wenn ein neuer Balken erscheint, und sie beim Initialisieren zu lesen....

 
motoRND:

@Vladimir Karputov

Sie haben die Frage ignoriert. Ich wiederhole.

so wie ich es verstanden habe, wird beim Wechsel der TF auf dem Chart die gesamte Historie der Handelssitzung zurückgesetzt... bx, Eröffnung... das gleiche - beginnt von vorne! ist das so konzipiert?

Sv

Ich habe mehr als einmal gesagt: es ist so konzipiert. Wer es nicht glaubt - kann sich den Code ansehen.

 

Hallo,

Ich habe die Zip-Datei heruntergeladen und entpackt: Ich habe nur eine kleine 8 Ko-Datei, ich weiß nicht, in welcher Farmat. Wie kann ich tun, bitte.

Ich danke Ihnen im Voraus.

 
maboudi:

Hallo,

Ich habe die Zip-Datei heruntergeladen und entpackt: Ich habe nur eine kleine 8 Ko-Datei, ich weiß nicht, in welcher Farmat. Wie kann ich tun, bitte.

Ich danke Ihnen im Voraus.

Wie man Code von MetaEditor herunterladen

Toolbox - Workspace - MetaTrader 5
Toolbox - Workspace - MetaTrader 5
  • www.metatrader5.com
Double-click an error message, to open an appropriate file. The cursor is immediately set to the error location. A similar action is performed using the Go to Line command in the context menu. Search The search is performed using the toolbar and the Online Search command in the Help menu. Search results are conveniently displayed by categories...
 

Ich verwende MT4, kann das funktionieren?