Ist der Zeckenverlauf auf dem Server verfügbar? - Seite 4

 
Ich denke, es gibt eine rationale Grundlage in der vorgeschlagenen von Soland, aber persönlich brauche ich sie für die Forschung und ich fürchte, dass ich kaum etwas ernsthaft in einer Woche zu liefern, und ich habe eine solche Anzeige nur eine Woche vor dem Erscheinen der Branche, einer meiner Freunde schrieb, aber es gibt ein Problem - er löscht die Datei mit Zecken nach jeder Initialisierung, und weder er noch ich konnte die Arbeit zu beenden. Es bildet Balken nach einem festen Volumen, denn manchmal kommt ein Tick und das Volumen hat sich nicht um 1 verändert.
//+------------------------------------------------------------------+
//|                                                    TickSaver.mq4 |
//|                               Copyright © 2006, Cherednikov K.M. |
//|                                            mailto:chkm76@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2006, Cherednikov K.M."
#property link      "mailto:chkm76@mail.ru"

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Black

#include <WinUser32.mqh>
//---- input parameters
extern int NumTicksPerBar=3;
extern int Minutes_for_HSTfilename=3;

//---- buffers
double ExtMapBuffer1[];

//---- глобальные переменные
int hFile=-1;
int iFilePos;
int CurrTickNumber=0;
datetime i_time, i_time_bar0;
double d_open, d_low, d_high, d_close, d_volume;
double d_low_bar0, d_high_bar0, d_volume_bar0;

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   int    nVersion=400;
   string szCopyright;
   string szSymbol=Symbol();
   int    iDigits=Digits;
   int    iUnused[13];

   //---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   hFile=FileOpenHistory(szSymbol + Minutes_for_HSTfilename + ".hst", FILE_READ);
   if(FileSize(hFile)<0){
   // Дабы не затереть реальные файлы историй, в имя файла добавлен "0" перед периодом
   hFile=FileOpenHistory(szSymbol + Minutes_for_HSTfilename + ".hst", FILE_BIN|FILE_WRITE);
   if(hFile < 0) return(-1);
   //---- Записать заголовок hst-файла
   szCopyright="(C)opyright 2003, MetaQuotes Software Corp.";
   FileWriteInteger(hFile, nVersion, LONG_VALUE);
   FileWriteString(hFile, szCopyright, 64);
   FileWriteString(hFile, szSymbol, 12);
   FileWriteInteger(hFile, Minutes_for_HSTfilename, LONG_VALUE);  //  файл - М2
   FileWriteInteger(hFile, iDigits, LONG_VALUE);
   FileWriteInteger(hFile, 0, LONG_VALUE);
   FileWriteInteger(hFile, 0, LONG_VALUE);
   FileWriteArray(hFile, iUnused, 0, 13);
   FileFlush(hFile);
   iFilePos=FileTell(hFile);
    }
    
    else{ iFilePos=FileTell(hFile); }
   i_time = CurTime();
   i_time_bar0 = Time[0];
   d_open = Close[0];
   d_low = d_open;
   d_high = d_open;
   d_close = d_open;
   d_volume = 1;
   d_volume_bar0 = Volume[0];

   /*d_low_bar0 = Low[0];
   d_high_bar0 = High[0];*/
   
   //----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   if(hFile>=0)
    { 
      FileClose(hFile); 
      hFile=-1; 
    }
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   CurrTickNumber++;
   //********* Обновление данных в переменных текущего бара **************
   d_close = Close[0];
   if (d_low > d_close) d_low = d_close;
   if (d_high < d_close) d_high = d_close;

   // Объем
   if (i_time_bar0!=Time[0])  // если на реальном графике появился новый бар, а для 
                              //   нас еще не набралось тиков закончить тиковый бар...
    { //расчитать изменение объема с учетом пополнения предыдущего реального бара
      d_volume += Volume[1] + Volume[0] - d_volume_bar0;
      i_time_bar0 = Time[0];
    }
   else
    { //расчитать изменение объема только с учетом текущего реального бара
      d_volume += Volume[0] - d_volume_bar0;
    }
   d_volume_bar0 = Volume[0];

   // Обновление данных последнего бара
   FileSeek(hFile, iFilePos, SEEK_SET);
   FileWriteInteger(hFile, i_time, LONG_VALUE);
   FileWriteDouble(hFile, d_open, DOUBLE_VALUE);
   FileWriteDouble(hFile, d_low, DOUBLE_VALUE);
   FileWriteDouble(hFile, d_high, DOUBLE_VALUE);
   FileWriteDouble(hFile, d_close, DOUBLE_VALUE);
   FileWriteDouble(hFile, d_volume, DOUBLE_VALUE);

   if (CurrTickNumber==NumTicksPerBar)
   {
      iFilePos=FileTell(hFile);
      CurrTickNumber=0;
      i_time = CurTime();// / 60 / Minutes_for_HSTfilename;
      //i_time *= 60 * Minutes_for_HSTfilename;
      d_open = Close[0];
      d_low = d_open;
      d_high = d_open;
      d_close = d_open;
      d_volume = 1;
      FileWriteInteger(hFile, i_time, LONG_VALUE);
      FileWriteDouble(hFile, d_open, DOUBLE_VALUE);
      FileWriteDouble(hFile, d_low, DOUBLE_VALUE);
      FileWriteDouble(hFile, d_high, DOUBLE_VALUE);
      FileWriteDouble(hFile, d_close, DOUBLE_VALUE);
      FileWriteDouble(hFile, d_volume, DOUBLE_VALUE);
   }
   FileFlush(hFile);

   // Обновление окна автономно открытого файла
   int hwnd=WindowHandle(Symbol(), Minutes_for_HSTfilename);
   if (hwnd!=0) PostMessageA(hwnd, WM_COMMAND, 33324, 0);

   Comment("Отладочная Инфа: \n"+
           "Тиков в баре: " + CurrTickNumber +
           "\nOpen=" + d_open + "    Close=" + d_close +
           "\nHigh=" + d_high + "    Low=" + d_low +
           "\nVol=" + d_volume +
           "\nПозиция файла: " + iFilePos
   );

   return(0);
  }
//+------------------------------------------------------------------+


 
Ich persönlich habe den Eindruck, dass die Entwickler technische Probleme künstlich erfinden, um sich für ihre Unwilligkeit (oder Unmöglichkeit) zu rechtfertigen, MT im Hinblick auf die Zeckengeschichte zu verbessern. <br / translate="no">
Tickfile-String (Time,Close,Volume) = (int,double,double) = (4,8,8,) = 20 Bytes.


Die Anführungszeichen können als ganze Zahlen gespeichert werden, indem sie entsprechend mit 10000 und 100 (für Japanisch) multipliziert werden.
Sie können auch Schlüsselpunkte und den Versatz relativ zum letzten Zitat speichern.
All diese Probleme sind technischer Natur.
Das Hauptproblem ist strategischer Natur.
Zitate sind NICHT erwünscht und werden es meiner Meinung nach auch nicht sein. Nur wenn das Terminal von Konkurrenten bedrängt wird, besteht die Voraussetzung für ein tickendes Terminal.
Es gibt ein weiteres Problem. Die Kunden zahlen nicht für das Terminal.
Es wird von DTs bezahlt, die Server kaufen, und DTs sind NICHT an dem Tick-Terminal interessiert, weil es erfahrene Pipser geben wird, die an den Besonderheiten der DT-Kurse arbeiten.
 
Die Maklerfirmen sind nicht an einem Tick-Terminal interessiert, denn es wird Börsenmakler geben, die sich mit den Besonderheiten der Kurse der Maklerfirmen beschäftigen.

Es ist unwahrscheinlich, dass Maklerfirmen über das Terminal (Tick oder Time Terminal) nachdenken. Sie haben andere Interessen. Alles, was für Maklerunternehmen erforderlich ist, wird meines Erachtens bereits von den Entwicklern vorgegeben (Erlaubnis/Verbot des automatischen Handels, Stornierung von Geschäften zu nicht marktgerechten Preisen usw.). Die Statistiken der Meisterschaft zeigen, dass jedes DC eine gute "Küche" einrichten kann und dass das Auftauchen eines speziellen Tick-Terminals nichts Grundlegendes ändern wird, zumindest werden sich die DCs kaum gegen die Einführung eines solchen Terminals wehren, wenn es entwickelt wird. Nun, da es noch keinen detaillierten Nachweis für die Notwendigkeit der Einführung von Zeckenserien gibt, wird das Thema dort bleiben, wo es jetzt ist.
Es wäre interessant, die Ergebnisse der Tick-Proofs der Omega-Plattform zu betrachten, die "alles kann - jeden Tick und jeden Zeitrahmen".

Obwohl die Diskussion über Makler bereits den Rahmen dieses Forums sprengen würde. Ich schätze, sie werden jetzt alles aufräumen:o)
 
Ich denke, dass der Vorschlag von solandr eine rationale Grundlage hat, aber ich persönlich brauche sie für die Forschung, und ich fürchte, dass ich in einer Woche nicht in der Lage sein werde, etwas Ernsthaftes zu liefern...

"MQL4: Tick-Sammler
Der Expert Advisor speichert den Tickverlauf für bestimmte Symbole
 
Ich schlage vor, dass wir von der endlosen und sinnlosen verbalen Debatte über das Tic-Tac-Toe-Thema zu detaillierten Beweisen übergehen. Dazu müssen wir Folgendes tun. Wenn Sie möchten, können Sie ein einfaches Skript schreiben, das Tick-Serien mit einer ausgewählten Anzahl von Ticks erzeugt und die Daten in eine CSV-Datei schreibt. Außerdem können Sie diese Datei in EXCEL öffnen und die Standard-EXCEL-Werkzeuge verwenden, um das Tick-Series-Diagramm zu zeichnen. Wenn ein solches Diagramm für eine Woche verfügbar ist, z. B. für einen bestimmten Tick-Frame, können Sie es mit einem Standard-MT4-Diagramm vergleichen und zeigen, dass das Tick-Frame-Diagramm einige zusätzliche Einstiegs-/Ausstiegspunkte geliefert hat, die man nicht auf irgendeine Weise aus den Standard-Zeitreihen hätte erhalten können, z. B. mithilfe der Trend-Unterstützungs-/Widerstandslinien oder etwas anderem.

Lieber solandr!
Warum irritiert Sie diese Polemik so sehr? Warum glauben Sie immer noch, dass Sie alles über die Zukunft wissen - sowohl was zu tun als auch was nicht zu tun ist?

Das von Ihnen vorgeschlagene Programm zur "Beweisführung" ist prinzipiell falsch. Sie wollen den Erfolg des Zeckenhandels zum einzigen glaubwürdigen Argument machen. Wenn man so argumentiert, dann braucht man gar keine der bestehenden t/fs - es hat noch niemand von einem radikalen Erfolg dank eines bestimmten t/f berichtet.

Ich möchte Sie darüber informieren. Ich habe vor langer Zeit einen Expert Advisor geschrieben, der nicht nur die Tick-Historie schreibt, sondern sie auch in Echtzeit im Chart anzeigt. Alles, was in anderen Rahmen möglich ist, kann also auch in einem Tick-Chart gemacht werden. Es zeigt einmal mehr, was für ein mächtiges Werkzeug MT4+MCL4 ist. Es zeigt auch, dass es nicht so schwierig ist, diesen Dienst zu integrieren.

Außerdem habe ich viel Zeit damit verbracht, Zeckendaten zu recherchieren. Es ist völlig gleichgültig, ob ich dadurch auf dem Markt erfolgreich bin oder nicht. Menschen erreichen etwas oder nicht aufgrund ihrer Fähigkeiten und ihrer harten Arbeit. Aber damit ein Ergebnis erzielt werden kann, müssen sie ZUERST die Fähigkeit dazu haben. Diese Bedingung ist nicht ausreichend, aber notwendig! :-)

Warum die Frage, ob es möglich ist, mit Zeitrahmen und nicht mit Tick-Frames zu arbeiten? Diese Situation ist aufgrund der begrenzten Möglichkeiten (Zeit, Arbeitskraft usw.) der Entwickler verständlich. In Bezug auf die Vollständigkeit der Dienstleistungen und die Strategie ist dies jedoch völlig inakzeptabel. Wenn es also heute mehr oder weniger dem Markt entspricht, wird es morgen nicht mehr so sein.
 
2 Jhonny
Ich denke, der Vorschlag von Scholand hat eine rationale Grundlage, aber ich persönlich brauche sie für die Forschung, und ich fürchte, dass ich in einer Woche nichts Seriöses liefern kann, aber ich habe einen solchen Vorlaufindikator


Ganz genau! Das ist genau mein Punkt.

Übrigens, diese Sache sollte als EA implementiert werden. Der Indikator überspringt Ticks!
Um ein Reiben der Datei zu vermeiden, muss sie wie folgt geöffnet werden: FILE_BIN|FILE_READ|FILE_WRITE
Und bevor Sie in die Datei schreiben, setzen Sie den Schreibzeiger auf das Ende der Datei.
 
Yurixx, ich habe nur meinen Standpunkt dargelegt! Dies ist ein freies Forum und jeder hat das Recht, seine Meinung zu äußern, nicht wahr? Oder sollten wir immer auf die Meinung der Mehrheit hören? Aber die meisten sind "undicht" - schauen Sie sich die Meisterschaft an!

Die Leute haben die Entwickler gebeten, eine tickende Geschichte zu erstellen, was die Entwickler kategorisch abgelehnt haben. Und was nun? Sie schreiben hier einfach einen Berg von Beschwerden, dass die Entwickler nicht auf die "Wünsche der arbeitenden Menschen" gehört haben? Ich für meinen Teil habe lediglich eine vernünftige Möglichkeit vorgeschlagen, Druck auf die Entwickler auszuüben - das ist alles! Wenn jeder nur endlose verbale Beschwerden ohne wirkliche Fortschritte in der Sache will, dann bitte, ich persönlich habe nichts dagegen.
 
"MQL4: Tick-Sammler <br / translate="no"> Der Expert Advisor speichert die Tick-Historie für die angegebenen Symbole


Natürlich möchte ich mich für den Expert Advisor bedanken, aber ich habe gerade nachgeschaut, er speichert die Daten in csv, während meiner so konzipiert wurde, dass er sie in der Historie speichert und der Chart dann offline geöffnet und analysiert werden kann.
 
Natürlich danke für die Expert Advisor, aber ich habe gerade nachgeschaut, es speichert in csv, während meine wurde entwickelt, um in der Geschichte zu speichern und dieses Diagramm kann geöffnet und offline analysiert werden.

"MQL4: simple_csv2fxt".
Einfacher csv zu fxt Konverter.


Es ist notwendig, meinen Expert Advisor und dieses Skript zu kombinieren und ein bisschen zu flicken - dann wird es perfekt sein ;)
 
Die Frage, ob wir Zeckendaten brauchen, scheint mir sinnlos zu sein, denn die Antwort liegt auf der Hand: Je mehr Möglichkeiten angeboten werden, desto vollständiger und hochwertiger ist der Dienst, und es wird immer Menschen geben, die das eine oder das andere brauchen... Die Antwort auf die Frage, ob diese Funktion in naher Zukunft eingeführt wird? - Offensichtlich nicht... Es gibt meiner Meinung nach einen wichtigen Grund... Nämlich - wird nur umgesetzt werden, was bringt Metakvotes Einnahmen in diesem Stadium in Form von neuen Verträgen und das ist logisch und richtig ... Als Einkommen bringt zwischengeschaltete Unternehmen (Makler, DC, etc.) dann umgesetzt werden, dass ihr Leben vereinfacht, aber nicht, was ihr Leben komplizieren wird ...
Zeckendaten werden ihr Leben aus folgenden Gründen erschweren:
1. Wenn Tick-Daten verfügbar sind, werden die Expert Advisors, die auf Tick-Symbolen handeln, mit Sicherheit erscheinen, und daher wird es große Schwierigkeiten mit der Überschneidung solcher Experten geben.
2) Wenn verlässliche Zeckendaten verfügbar sind, wird die Möglichkeit bestehen, Zeckenexperten im Tester zu testen (was auch deren Anzahl erhöhen wird).
3. Nach dem Zugang zu Tickdaten wird die Öffentlichkeit Zugang zu ECHTEN Volumina verlangen :))))))
4. Platz 4 wird von der Unwilligkeit oder der Geschäftigkeit der Entwickler eingenommen (wenn es eine Nachfrage von Maklerfirmen gäbe, würden sie es in zwei Wochen schaffen :))
5. Und schließlich ein "Trumpf"-Argument über wahnsinnigen Datenverkehr und Speicherplatz...