Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 714

 
Wo kann ich den Beginn und das Ende der Mittagszeit für alle Börsen in Kiewer Zeit oder GMT finden?
 
alexey1979621:

Hallo zusammen, ich habe bereits eine ähnliche Frage auf Seite 711 gestellt, leider hat niemand geantwortet, vielleicht hat jetzt jemand...

Ich tue dies:

Ich bringe die Situation in die kumulative Nullstellung (Verriegelung) und schließe dann das Schloss.

Und nun zu den Details.

1. Berechnung der Gesamtposition:

Aufträge stornieren

Wenn wir kaufen, wird unsere Gesamtposition um das Auftragslos erhöht.

Beim Verkauf wird die Gesamtposition um das Auftragslosreduziert.

Ende des Suchzyklus für Aufträge

2. Einen Standort erstellen:

Wenn die Gesamtposition über Null liegt, verkaufen wir;

Wenn die Gesamtposition unter Null liegt, werden wir kaufen;

Ansonsten tun wir nichts.

Die Losgröße ist gleich der Gesamtposition.

3. Schließung einer Partie (überlappende Positionen)

Endlosschleife ( while (true) )

Die Ticks der Kauf- und Verkaufsaufträge auf Null setzen

Schleife über die Aufträge

if (buy) das Ticket für einen Kaufauftrag bestätigen

if (sell) das Ticket für den Verkaufsauftrag bestätigen

die Auftragsschleife schließen

wenn (es einen Verkauf und einen Kauf gibt) dann ein Cross-Close

ansonsten die Endlosschleife verlassen (break)

Ende der Endlosschleife

Nun programmieren wir diesen Algorithmus in der gewählten Sprache (MQL4)

 

Leute, sagt mir, wenn ich eine Schlusszeit für einen schwebenden Auftrag festlege

Daten_1=iTime(Symbol(),PERIOD_D1,0) +86400; //die Lebensdauer des Auftrags

wenn sie bereits auf dem Markt ist (d.h. bereits ausgeführt wurde), wird sie geschlossen oder nicht

 
korobok777:

Leute, sagt mir, wenn ich eine Schlusszeit für einen schwebenden Auftrag festlege

Daten_1=iTime(Symbol(),PERIOD_D1,0) +86400; //die Lebensdauer des Auftrags

wenn sie bereits auf dem Markt ist (d.h. bereits ausgeführt wurde), wird sie geschlossen oder nicht

keine
 
artmedia70:
keine
Ich danke Ihnen vielmals.
 

Hallo zusammen, ich habe noch nie mit Datei-Operationen gearbeitet, aber ich musste es, und ich komme nicht dahinter.

Die Aufgabe besteht darin, mehrmals am Tag Daten in eine csv-Datei zu schreiben

Das heißt, heute 24.09.2014 werden Daten in einer Zeile in verschiedene Zellen des Typs

A B C

1 Datum | Wert | Wert

wenn sich die Daten von heute geändert haben, überschreiben wir die Zeile vom 24.09.2014

wenn es ein neuer Tag ist, wird die neue Zeile neu geschrieben.

Ich rauche und kriege keine Kippe...

 
VOLDEMAR:

Hallo zusammen, ich habe noch nie mit Datei-Operationen gearbeitet, aber ich musste es, und ich komme nicht dahinter.

Die Aufgabe besteht darin, mehrmals am Tag Daten in eine csv-Datei zu schreiben

Das heißt, heute 24.09.2014 werden Daten in einer Zeile in verschiedene Zellen des Typs

A B C

1 Datum | Wert | Wert

wenn sich die Daten von heute geändert haben, überschreiben wir die Zeile vom 24.09.2014

wenn es ein neuer Tag ist, wird die neue Zeile neu geschrieben.

Ich rauche und kriege keine Kippe...

void Запись()
{
  int handle;
  string st=TimeToStr(TimeCurrent(), TIME_DATE);
  string filename = st+" Bid_Ask.csv"; // Формируем имя файла
  handle = FileOpen(filename,FILE_CSV|FILE_READ | FILE_WRITE,';');
  if(handle < 1)
  {
    Print("Не удалось создать файл. Ошибка #", GetLastError());
    return;
    //FileClose(handle);
  }
  
  FileWrite(handle,                   
            " Время ",
            " Bid ",
            " Ask ",
            " Volume "); // заголовок
  FileSeek(handle, 0, SEEK_END);
  FileWrite(handle,
            TimeToStr(TimeCurrent(),TIME_MINUTES|TIME_SECONDS),
            Bid,
            Ask,
            Volume[0]);
 
  FileClose(handle);
  return;
}
Es muss in etwa so sein.
 
r772ra:
Wahrscheinlich so etwas wie das hier.

und wie schreibe ich die letzte Zeile neu, wenn sich die Daten geändert haben?

 
VOLDEMAR:

Wie schreibe ich die letzte Zeile neu, wenn sich die Daten geändert haben?

FileSeek(), Hilfe.

 

Wenn sich die Daten geändert haben, sollten wir den Zeiger auf die Stelle setzen, an der wir sie mit fileseek überschreiben wollen, sie mit der Standardmethode filewrite... überschreiben, uns das Ende der Datei merken und sie mit der WinApi-Funktion abschneiden

Oder Sie verwenden die Standardmethode, indem Sie die Position an das Ende der Datei schreiben, wo die nützlichen Informationen enden, und dann diese Position lesen. (Sie können die Position in eine andere Datei schreiben).

Auf jeden Fall sollte man sie besser trimmen, und es gibt kein Standardwerkzeug zum Trimmen ((

hier istZhunko12.09.2014 20:19#

Es wäre interessant, als WinApi-Funktionen