Собственно вопрос в заголовке, необходимо узнать тип котировки, костылей я конечно знаю как навертеть, но хотелось бы у знающих людей поинтересоваться есть ли нормальное решение.
Будет классно если скинете пример кода.
Депозит в USD
- USDCHF - прямая
- EURUSD - обратная
- GBPCHF - кросс
В языке MQL есть функции работы со строками (StringFind()). В вашем случае если USD встречается в 0-вой позиции значит прямая, в 3-тей позиции обратная. Если нет (-1) то кросс.
Вот вырезка из очень старого кода какого-то классика нашего форума, я уже не помню кого
const string symbolMargin = SymbolInfoString(sym, SYMBOL_CURRENCY_MARGIN); const string symbolProfit = SymbolInfoString(sym, SYMBOL_CURRENCY_PROFIT); string calc_currency; // валюта для расчета //--- если валюта котировки символа и валюта депозита одинаковы (обратные котировки) if (symbolProfit == baseCurrency) { } //--- если базовая валюта символа и валюта депозита одинаковы (прямые котировки) else if (symbolMargin == baseCurrency) { } //--- если до сих пор валюта для расчета не определена, значит перед нами кроссовая валюта else { calc_currency = symbolMargin + baseCurrency; double price = f(calc_currency); if (price != 0) { } else { // попробуем наоборот calc_currency = baseCurrency + symbolMargin; double price = f(calc_currency); } }
В языке MQL есть функции работы со строками (StringFind()). В вашем случае если USD встречается в 0-вой позиции значит прямая, в 3-тей позиции обратная. Если нет (-1) то кросс.
Ну я об этом сразу и подумал, но в моем понимание это больше кастыль.
Вот вырезка из очень старого кода какого-то классика нашего форума, я уже не помню кого
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Собственно вопрос в заголовке, необходимо узнать тип котировки, костылей я конечно знаю как навертеть, но хотелось бы у знающих людей поинтересоваться есть ли нормальное решение.
Будет классно если скинете пример кода.
Депозит в USD