Es ist unwahrscheinlich, dass das Problem so schnell gelöst werden kann :(
Hinzugefügt
Ich glaube, ich habe eine Idee, warum das so ist!
Die Sache ist die, dass die Geschäfte und Kurse (Aufträge) von der Börse in unterschiedlichen Strömen kommen,
und auf dem Server werden sie von verschiedenen Funktionen verarbeitet. Derjenige, der für Geschäfte zuständig ist
funktioniert korrekt und speichert die Informationen in der Historie
(was durch die Tatsache belegt wird, dass wir in 496.357 Geschäften keinen einzigen Übersprung haben), und derjenige, der für
für Aufträge zuständig ist, ist nicht so gut...
Hier ein Auszug aus dem Schriftverkehr mit dem BSB:
Support Team 2016.12.1414:17
1. Тики (а также буки, текущие цены из маркет вотча) обновляются/собираются независимо от работы индикаторов/экспертов. Также независимо от экспертов строятся бары.
2. А вот расчет индикаторов происходит в потоке построения баров. То есть после каждого применения тика к бару - вызывается расчет индикатора! При этом ни один тик не пропускается.
3. Отсюда получается, что вызывая из индикатора CopyTicks вы можете получать более свежие тиковые данные (а также буки, значения из маркет вотча), чем те, что уже применены к барам.
Это нужно учитывать в расчетах: либо вы анализируете тики, либо бары, либо если нужно и то и другое, то кому то нужно отдать приоритет (для случая последнего бара).
4. Особенно это начинается сильно проявляется если расчет индикатора делается долго.
Ich möchte Ihnen hier einen Auszug aus dem Schriftverkehr mit der SR zur Verfügung stellen:
2. А вот расчет индикаторов происходит в потоке построения баров. То есть после каждого применения тика к бару - вызывается расчет индикатора! При этом ни один тик не пропускается.
Sie lassen einen langsamen Indikator auf EURUSD M1 laufen. Sie lassen den EA auf einem anderen EURUSD M1-Chart laufen. Und wenn der EA den Balkenverlauf verwendet, kommt es ständig zu Abstürzen.
prostotrader: Die Synchronisierung erfolgt bei der ersten Transaktion (vorläufig, bis zur Klärung)
Hat sowohl um 10:00 Uhr als auch um 14:05 Uhr genau funktioniert.
2017.01.2610:00:00.000 Time_sync_forts (URKA-3.17,H1) Local time sync is done. Symbol = RTS-3.17 Sync hour = 10 Sync min = 0 Sync sec = 0 Sync ms = 0 2017.01.2614:05:00.005 Time_sync_forts (URKA-3.17,H1) Local time sync is done. Symbol = RTS-3.17 Sync hour = 14 Sync min = 5 Sync sec = 0 Sync ms = 5
Hinzugefügt
Ich denke, ich werde den BR entfernen, so dass alles automatisch für 3 Monate passiert :)
Ich habe bei fast 500.000 Geschäften keine Lücken gefunden.
Offensichtlich haben sie nichts anderes repariert, außer den INFOs (Bestellungen)...
Aber es ist gut zu sehen, dass es die Progrexe doch noch gibt.
Ja, es gibt Fortschritte - große Fortschritte. Aber die Synchronisation in Echtzeit zu tun (um Ticks in einer Kerze mit Volumen, das von volume[] erhalten werden kann, abzugleichen) - Sie haben eine Menge von Krücken zu setzen. Diese Frage ist für mich noch nicht ganz geklärt. Die SDs haben aufgehört, mir zu antworten :)
Die Jungs von BCS, die ein echtes Konto haben,
Bitte führen Sie den Code mit einem echten Konto aus und posten Sie das Ergebnis hier.
#property link "https://www.mql5.com"
#property version "1.00"
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
MqlTick post_ticks[];
string symbol = "Si-3.17";
ulong from = ulong(D'2017.01.20 23:49:00') * 1000;
int result=CopyTicks(symbol, post_ticks, COPY_TICKS_ALL, from, 2000);
if(result > 0)
{
string str="";
int f_handle=FileOpen("Si-3.17_ticks.txt",FILE_WRITE|FILE_ANSI|FILE_TXT);
if (f_handle != INVALID_HANDLE)
{
FileWrite(f_handle, "Symbol\tTime\tLast\tFlags");
for(int i = 0; i< result;i++)
{
if(post_ticks[i].flags == 88)
{
str=symbol + "\t" + string(post_ticks[i].time) + "." +
string(post_ticks[i].time_msc%1000) + "\t" + string(post_ticks[i].last) +
"\tПродажа";
}
else
if(post_ticks[i].flags == 56)
{
str=symbol + "\t" + string(post_ticks[i].time) + "." +
string(post_ticks[i].time_msc%1000) + "\t" + string(post_ticks[i].last) +
"\tПокупка";
}
else
{
str=symbol + "\t" + string(post_ticks[i].time) + "." +
string(post_ticks[i].time_msc%1000) + "\t" + string(post_ticks[i].last) +
"\t" + string(post_ticks[i].flags);
}
FileWrite(f_handle, str);
}
FileClose(f_handle);
}
}
//---
return(INIT_SUCCEEDED);
}
Es ist unwahrscheinlich, dass das Problem so schnell gelöst werden kann :(
Hinzugefügt
Ich glaube, ich habe eine Idee, warum das so ist!
Die Sache ist die, dass die Geschäfte und Kurse (Aufträge) von der Börse in unterschiedlichen Strömen kommen,
und auf dem Server werden sie von verschiedenen Funktionen verarbeitet. Derjenige, der für Geschäfte zuständig ist
funktioniert korrekt und speichert die Informationen in der Historie
(was durch die Tatsache belegt wird, dass wir in 496.357 Geschäften keinen einzigen Übersprung haben), und derjenige, der für
für Aufträge zuständig ist, ist nicht so gut...
Hier ein Auszug aus dem Schriftverkehr mit dem BSB:
1. Тики (а также буки, текущие цены из маркет вотча) обновляются/собираются независимо от работы индикаторов/экспертов. Также независимо от экспертов строятся бары.
2. А вот расчет индикаторов происходит в потоке построения баров. То есть после каждого применения тика к бару - вызывается расчет индикатора! При этом ни один тик не пропускается.
3. Отсюда получается, что вызывая из индикатора CopyTicks вы можете получать более свежие тиковые данные (а также буки, значения из маркет вотча), чем те, что уже применены к барам.
Это нужно учитывать в расчетах: либо вы анализируете тики, либо бары, либо если нужно и то и другое, то кому то нужно отдать приоритет (для случая последнего бара).
4. Особенно это начинается сильно проявляется если расчет индикатора делается долго.
Ich möchte Ihnen hier einen Auszug aus dem Schriftverkehr mit der SR zur Verfügung stellen:
Die Synchronisierung erfolgt bei der ersten Transaktion (vorläufig, bis zur Klärung)
Hat sowohl um 10:00 Uhr als auch um 14:05 Uhr genau funktioniert.
2017.01.26 14:05:00.005 Time_sync_forts (URKA-3.17,H1) Local time sync is done. Symbol = RTS-3.17 Sync hour = 14 Sync min = 5 Sync sec = 0 Sync ms = 5
Hinzugefügt
Ich denke, ich werde den BR entfernen, so dass alles automatisch für 3 Monate passiert :)
Aus der Ankündigung des neuen Builds 1525 Punkt 11
Aber der SD hat überhaupt nichts geschrieben.
Gab es früher irgendwelche "Löcher"?
Aus der Ankündigung des neuen Builds 1525 Punkt 11
Aber der SD hat überhaupt nichts geschrieben.
Gab es früher irgendwelche "Löcher"?
Früher - das waren sie auf jeden Fall. In Bezug auf TRADE-Zecken - ganz sicher. In Build 1495 ist es viel besser.
Ich habe bei fast 500.000 Geschäften keine Lücken gefunden.
Offensichtlich haben sie nichts anderes repariert, außer den INFOs (Bestellungen)...
Aber es ist gut zu sehen, dass es den progxx doch noch gibt.
Hinzugefügt
Es ist bedauerlich, dass die Forumsteilnehmer (FORTS) bei diesem wichtigen Problem schwach sind.
Keiner von BCS hat jemals einen Test veröffentlicht.
Je mehr Daten sie haben, desto schneller können sie sie korrigieren.
Ich habe bei fast 500.000 Geschäften keine Lücken gefunden.
Offensichtlich haben sie nichts anderes repariert, außer den INFOs (Bestellungen)...
Aber es ist gut zu sehen, dass es die Progrexe doch noch gibt.
Ich habe bei fast 500.000 Geschäften keine Lücken gefunden.
Offensichtlich haben sie nichts anderes repariert, außer den INFOs (Bestellungen)...
Aber es ist gut zu sehen, dass es den progxx doch noch gibt.
Hinzugefügt
Es ist bedauerlich, dass die Forumsteilnehmer (FORTS) bei diesem wichtigen Problem schwach sind.
Keiner von BCS hat jemals einen Test veröffentlicht.
Je mehr Daten sie haben, desto schneller können sie sie korrigieren.