tol64: Ich danke Ihnen. Ich werde das im Hinterkopf behalten. Vielleicht kann mir jemand sagen, wann diese Spalte ausgefüllt ist und wann nicht (wie in meinem Fall). Wenn etwas ist, werde ich beim Service Desk nachfragen.
Dies ist die Kennung, die Ihrem Auftrag von der Ausführungsplattform - der Börse - zugewiesen wird.
Unklarheit bei type_filling: nur ein Modus ist erlaubt
string symbol = "EURUSD";
int flags = SymbolInfoInteger( symbol, SYMBOL_FILLING_MODE );
//разрешен только SYMBOL_FILLING_ALL_OR_NONE
gleichzeitig platziert SendOrder Aufträge ebenso erfolgreich mit
MqlTradeRequest request;
request.type_filling = ORDER_FILLING_FOK; //соответствующий флаг разрешения 1
als auch mit
request.type_filling = ORDER_FILLING_RETURN; //соответствующий флаг разрешения 0
Und nach erfolgreicher Platzierung ist die aktuelle Eigenschaft des platzierten Auftrags ORDER_TYPE_FILLING immer = ORDER_FILLING_RETURN, auch wenn wir in der Abfrage request.type_filling = ORDER_FILLING_FOKangegeben haben
MqlTradeResult result;
OrderSelect( result.order );
int tpAfter = OrderGetInteger( ORDER_TYPE_FILLING );
//tpAfter всегда = ORDER_FILLING_RETURN
Es scheint mir eine Diskrepanz zwischen der Liste der zulässigen Modi und den tatsächlichen Eigenschaften des Auftrags nach der Platzierung zu bestehen
Bitte helfen Sie, die Situation zu analysieren, den folgenden Code:
void CStrategyMA::FitnessFunction(int chromos)
{
double res=0.0;
// Выбор символа (m_strategy_symbol) из масива используемых символов (m_name_symbols[]) количаством (m_count_symbols)// Пример: m_count_symbols = 1; m_name_symbols[0] = "EURUSD.e";
m_strategy_symbol = m_name_symbols[(int)MathRound(Colony[1][chromos]*(m_count_symbols-1))];
// Выбор периода из масива по индексу (от PERIOD_M5 (индекс - 5) до PERIOD_D1 (индекс - 19))// Для наглядности:// ENUM_TIMEFRAMES PERIOD_INDEX [22] = {PERIOD_CURRENT,// PERIOD_M1, PERIOD_M2,PERIOD_M3,PERIOD_M4,PERIOD_M5,PERIOD_M6,PERIOD_M10,PERIOD_M12,PERIOD_M15,PERIOD_M20,// PERIOD_M30,PERIOD_H1,PERIOD_H2,PERIOD_H3,PERIOD_H4,PERIOD_H6,PERIOD_H8, PERIOD_H12,PERIOD_D1, PERIOD_W1,// PERIOD_MN1};
m_period = PERIOD_INDEX[(int)(MathRound(Colony[2][chromos]*5)+14)];
// Освобождаю дескриптор загруженого ранее индикатораIndicatorRelease(m_handle);
// Создаю новый индикатор с периодом - (int)(MathRound(Colony[3][chromos]*100)+1)// от 1 до 100
m_handle=iMA(m_strategy_symbol,(ENUM_TIMEFRAMES)m_period,(int)(MathRound(Colony[3][chromos]*100)+1),0,MODE_EMA,PRICE_CLOSE);
// Без использования Sleep(1000); - генерируется последующая ошибка при использовании в коде ф-ции: CopyBuffer// "ошибка доступа к историческим даным", хоть дескриптор и создан!?!?!?Sleep(1000);
if(m_handle<0)
{
Alert("Ошибка при создании индикатора MA - номер ошибки: ",GetLastError()," ",m_strategy_symbol," ",m_period);
} else
{
// Аналитический процес
res = HistoryCheckTradeConditions();
}
AmountStartsFF++;
Colony[0][chromos]=res;
}
Bei der Verwendung dieser Funktion, Fehler "2012.11.28 09:58:32 4194304 Bytes nicht verfügbar", helfen Sie mir zu verstehen, erhöht Swap-Datei auf 10GBt.
Außerdem verwirrt mich der Begriff Sleep(1000); helfen Sie mir, ihn zu verstehen.
A100: Es gibt eine Inkonsistenz mit type_filling: Nur ein Modus ist erlaubt, während SendOrder Aufträge genauso erfolgreich platziert wie mit
Und nach erfolgreicher Platzierung ist die aktuelle Eigenschaft des platzierten Auftrags ORDER_TYPE_FILLING immer = ORDER_FILLING_RETURN, auch wenn in der Anfrage request.type_filling = ORDER_FILLING_FOKangegeben wurde
Ich glaube, es gibt eine Diskrepanz zwischen der Liste der zulässigen Modi und den tatsächlichen Eigenschaften der Bestellung, nachdem sie aufgegeben wurde
Ich habe bereits versucht, ähnliche Probleme hier zu behandeln: https://www.mql5.com/ru/forum/2248/page5#comment_197730(zwei Beiträge hintereinander). Danach gab es einige Änderungen in den Hilfsmaterialien. Aber die Frage selbst interessiert mich nicht mehr, was sich also genau geändert hat, kann ich nicht sagen. Werfen Sie noch einmal einen Blick in das Benutzerhandbuch des Terminals. Ich glaube, die Beschreibung dieser Modi wurde auch dort aktualisiert.
Ich danke Ihnen. Ich werde das im Hinterkopf behalten. Vielleicht kann mir jemand sagen, wann diese Spalte ausgefüllt ist und wann nicht (wie in meinem Fall). Wenn etwas ist, werde ich beim Service Desk nachfragen.
1. Fügen Sie den Code korrekt ein.
2. Wie wird der Parameter m_period optimiert/ausgewählt? D.h. welchen Wert hat er bei Ihrer Optimierung?
Eine vage Frage kann nur auf die gleiche vage Art und Weise beantwortet werden - Grafikperioden
Ich bin an Ihren Kommentaren zu diesem Fehler interessiert: " 2012.11.28 09:38:18 4194304 bytes not available "
Ich bin an Ihren Kommentaren zu diesem Fehler interessiert: " 2012.11.28 09:38:18 4194304 bytes not available "
Dies ist die Kennung, die Ihrem Auftrag von der Ausführungsplattform, also der Börse, zugewiesen wird.
Ich danke Ihnen allen für Ihre Antworten.
Unklarheit bei type_filling: nur ein Modus ist erlaubt
gleichzeitig platziert SendOrder Aufträge ebenso erfolgreich mit als auch mitrequest.type_filling = ORDER_FILLING_RETURN; //соответствующий флаг разрешения 0Und nach erfolgreicher Platzierung ist die aktuelle Eigenschaft des platzierten Auftrags ORDER_TYPE_FILLING immer = ORDER_FILLING_RETURN, auch wenn wir in der Abfrage request.type_filling = ORDER_FILLING_FOK angegeben haben
Es scheint mir eine Diskrepanz zwischen der Liste der zulässigen Modi und den tatsächlichen Eigenschaften des Auftrags nach der Platzierung zu bestehen
tol64:
Und bitte klären Sie, was mit externem Handelssystem gemeint ist, falls ich es auch falsch verstehe.
Sie sagten, dass
Sie sagten, Sie habentol64:
Ja, ich habe es sorgfältig geprüft, und zum Zeitpunkt der Auftragsauslösung wird in diesem Feld nichts angezeigt.
Wurde sie nun während des Börsenhandels überprüft oder nicht?
Nicht genug Speicher.
Ich danke Ihnen.
Bitte helfen Sie, die Situation zu analysieren, den folgenden Code:
Bei der Verwendung dieser Funktion, Fehler "2012.11.28 09:58:32 4194304 Bytes nicht verfügbar", helfen Sie mir zu verstehen, erhöht Swap-Datei auf 10GBt.
Außerdem verwirrt mich der Begriff Sleep(1000); helfen Sie mir, ihn zu verstehen.
Und nach erfolgreicher Platzierung ist die aktuelle Eigenschaft des platzierten Auftrags ORDER_TYPE_FILLING immer = ORDER_FILLING_RETURN, auch wenn in der Anfrage request.type_filling = ORDER_FILLING_FOK angegeben wurde
Ich glaube, es gibt eine Diskrepanz zwischen der Liste der zulässigen Modi und den tatsächlichen Eigenschaften der Bestellung, nachdem sie aufgegeben wurde