Большое спасибо за вашу статью и все остальные ваши статьи - советы и рекомендации для нас, новичков в MQL/C++, очень ценятся. Spasiba.
В настоящее время я работаю над собственным кодом управления капиталом, чтобы обеспечить торговую дисциплину и устранить эмоционально разрушительные страх и жадность.
Моя философия немного отличается в плане выбора размера лота - все начинается и заканчивается управлением деньгами (MM).
Я абсолютно с вами согласен. Эта статья не претендует на всеобъемлющий характер и преследует исключительно образовательные цели.
Рош, что-то я не пойму одной вещи. Запускаю в тестере мультивалютного эксперта, который работает на всех фишках чемпионата и внутри которого есть вызовы функции GetMarginForOpening(). Всё работает великолепно. Запускаю одновалютного эксперта на EURUSD с вызовом этой функции в тестере. Тож всё работает! Теперь снова запускаю этого же, одновалютного эксперта в тестере, но теперь уже на EURJPY. В журнале Тестера стратегий начинает мельтешить строка с текстом GetMarginForOpening : Не удалось подобрать валюту расчета для комбинации символа EURJPY и даже если в функции GetSymbolByCurrencies() поменять малость код на "symbolname = SymbolName(s, false);", то всё-равно инициализации структуры MqlTick по EURUSD не происходит! так что получается деление на ноль. Это глюк терминала или одного вызова функции GetMarginForOpening() для получения маржи недостаточно?
Теперь снова запускаю этого же, одновалютного эксперта в тестере, но теперь уже на EURJPY. В журнале Тестера стратегий начинает мельтешить строка с текстом GetMarginForOpening : Не удалось подобрать валюту расчета для комбинации символа EURJPY и даже если в функции GetSymbolByCurrencies() поменять малость код на "symbolname = SymbolName(s, false);", то всё-равно инициализации структуры MqlTick по EURUSD не происходит! так что получается деление на ноль. Это глюк терминала или одного вызова функции GetMarginForOpening() для получения маржи недостаточно?
Есть ли в Market Watch валюта USDJPY?
Выражение
symbolname = SymbolName(s, false);
обеспечивает в тестере доступ только к тем символам, которые доступны в окне "Обзор рынка"
обеспечивает в тестере доступ только к тем символам, которые доступны в окне "Обзор рынка"
Да в том то и дело, что всё есть! Складывается впечатление, что у Тестера стратегий для одновалютного эксперта свой виртуальный "Обзор рынка" в котором только одна фишка, по которой открывается позиция!
Да в том то и дело, что всё есть! Складывается впечатление, что у Тестера стратегий для одновалютного эксперта свой виртуальный "Обзор рынка" в котором только одна фишка, по которой открывается позиция!
Дык в тестере действительно свой "Обзор рынка", который нужно заполнять при инициализации мультивалютника...
Тут как раз разговор встал то про одновалютник. Ладно, будем считать, что так задумано, но в такой ситуации сей факт было бы, конечно, лучше отразить в справке по Метаэдитору, он отнюдь не очевиден для неискушённого в программировании пользователя. И в общем случае для одновалютного эксперта всё-таки функции из этой статьи в одновалютных экспертах работать не будут, ежели упустить из виду предварительную инициализацию этого хозяйства.
GODZILLA: Тут как раз разговор встал то про одновалютник. Ладно, будем считать, что так задумано, но в такой ситуации сей факт было бы, конечно, лучше отразить в справке по Метаэдитору, он отнюдь не очевиден для неискушённого в программировании пользователя. И в общем случае для одновалютного эксперта всё-таки функции из этой статьи в одновалютных экспертах работать не будут, ежели упустить из виду предварительную инициализацию этого хозяйства.
Насколько я в курсе с символами дело обстоит так: каждый эксперт имеет свой, виртуальный "обзор рыка". При тестировании в нем автоматом становится активным тот символ который выбран в параметрах тестера (как я понимаю для ТФ продуман такой же механизм). Если необходимо торговать или анализировать другие пары (мультивалютник) то необходимые символы нужно АКТИВИЗИРОВАТЬ (выбрав их с параметром true).
Interesting: Если необходимо торговать или анализировать другие пары (мультивалютник) то необходимые символы нужно АКТИВИЗИРОВАТЬ (выбрав их с параметром true).
Только нужно иметь ввиду, что перед тестированием символы должны быть выбраны в окне "Обзор рынка" терминала.
Привет, Рош
Большое спасибо за вашу статью и все остальные ваши статьи - советы и рекомендации для нас, новичков в MQL/C++, очень ценятся. Spasiba.
В настоящее время я работаю над собственным кодом управления капиталом, чтобы обеспечить торговую дисциплину и устранить эмоционально разрушительные страх и жадность.
Моя философия немного отличается в плане выбора размера лота - все начинается и заканчивается управлением деньгами (MM).
GetMarginForOpening : Не удалось подобрать валюту расчета для комбинации символа EURJPY
и даже если в функции GetSymbolByCurrencies() поменять малость код на "symbolname = SymbolName(s, false);", то всё-равно инициализации структуры MqlTick по EURUSD не происходит! так что получается деление на ноль. Это глюк терминала или одного вызова функции GetMarginForOpening() для получения маржи недостаточно?
Теперь снова запускаю этого же, одновалютного эксперта в тестере, но теперь уже на EURJPY. В журнале Тестера стратегий начинает мельтешить строка с текстом
GetMarginForOpening : Не удалось подобрать валюту расчета для комбинации символа EURJPY
и даже если в функции GetSymbolByCurrencies() поменять малость код на "symbolname = SymbolName(s, false);", то всё-равно инициализации структуры MqlTick по EURUSD не происходит! так что получается деление на ноль. Это глюк терминала или одного вызова функции GetMarginForOpening() для получения маржи недостаточно?
Есть ли в Market Watch валюта USDJPY?
Выражение
symbolname = SymbolName(s, false);обеспечивает в тестере доступ только к тем символам, которые доступны в окне "Обзор рынка"
Есть ли в Market Watch валюта USDJPY?
Выражение
обеспечивает в тестере доступ только к тем символам, которые доступны в окне "Обзор рынка"
Да в том то и дело, что всё есть! Складывается впечатление, что у Тестера стратегий для одновалютного эксперта свой виртуальный "Обзор рынка" в котором только одна фишка, по которой открывается позиция!
Да в том то и дело, что всё есть! Складывается впечатление, что у Тестера стратегий для одновалютного эксперта свой виртуальный "Обзор рынка" в котором только одна фишка, по которой открывается позиция!
Дык в тестере действительно свой "Обзор рынка", который нужно заполнять при инициализации мультивалютника...
PS
И набор "Глобальных переменных" теперь в тестере тоже свой (насколько я в теме)...
Дык в тестере действительно свой "Обзор рынка", который нужно заполнять при инициализации мультивалютника...
PS
И набор "Глобальных переменных" теперь в тестере тоже свой (насколько я в теме)...
Тут как раз разговор встал то про одновалютник. Ладно, будем считать, что так задумано, но в такой ситуации сей факт было бы, конечно, лучше отразить в справке по Метаэдитору, он отнюдь не очевиден для неискушённого в программировании пользователя. И в общем случае для одновалютного эксперта всё-таки функции из этой статьи в одновалютных экспертах работать не будут, ежели упустить из виду предварительную инициализацию этого хозяйства.
Если необходимо торговать или анализировать другие пары (мультивалютник) то необходимые символы нужно АКТИВИЗИРОВАТЬ (выбрав их с параметром true).
Только нужно иметь ввиду, что перед тестированием символы должны быть выбраны в окне "Обзор рынка" терминала.
Это не управление капиталом.
а лишь способ получения информации о наиболее важных характеристиках торгового счета и о свойствах финансовых инструментов.
Эта информация может быть использована для Money Management.
Это не управление деньгами.
а о том, как получить информацию о важнейших характеристиках торгового счета и о свойствах финансовых инструментов.
Эта информация может быть использована для Money Management.
Конечно, это не так. Как видите, даже автор статьи назвал ее"Функции для Money Management (...)". Поэтому я не вижу смысла в вашем замечании.