В моем советнике с чемпионата реализована проверка размера лота в зависимости от процента риска и инструмента- http://forum.alpari-idc.ru/thread33018.html
Ни разу не подвела.
Ни разу не подвела.
Спасибо. Буду изучать. Попутный вопрос: при закачке вашего эксперта в МетаЕдитор (а также любого эксперта с интернета), русские буквы превращаются в загагулины, хотя они правильно отображаются в окне браузера. По моему, у меня какой-то русский фонт отсутствует. Не можете подсказать какой?
Tools -> Options -> Font -> Script: -> Cyrillic
Tools -> Options -> Font -> Script: -> Cyrillic
Спасибо огромное. Теперь всё в порядке с русскими буквами.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
(1) (lots*StopLoss*Point)*contract=Risk*Balance
где contract=MarketInfo(symbol,MODE_LOTSIZE), то есть размер одного лота. Значит имеем:
---------------------------------------------------------
(2) lots=Risk*Balance/contract/(StopLoss*Point)
---------------------------------------------------------
Эта формула должна быть верной для всех пар валют: xxxUSD, USDxxx, xxxyyy. Кто нибудь может подтвердить это утверждение?
Приведенная формула (1) не учитывает маржи. Mои позиции могут быть также ликвидированы дилером принудительно, если моя свободная маржа падает ниже нуля. Можно написать второе уравнение:
(3) lots*contract*xRate/leverage=UsedMargin=Balance*(1-Risk) - это то что останется на моем счету после маржин колл.
Из (3) получаем:
-----------------------------------------------------------
(4) lots=Balance*(1-Risk)*leverage/contract/xRate
-----------------------------------------------------------
где xRate зависит от валютной пары. Предполагая что счёт в USD:
xxxUSD: xRate=bid
USDxxx: xRate=1
Получается что лоты должны вычисляться обоими формулами (2 и 4) и их наименьшее количество должно быть конечным результатом.
Проверка на примере:
--------------------------
Торгуем EURUSD на счету в USD.
Balance=$10,000.00
leverage=100
Risk=0.05 (позволяем потерю 5% баланса)
StopLoss=50
bid=1.25
lots1=Risk*Balance/contract/(StopLoss*Point)=0.05*10,000/100,000/(50*0.0001)=1 лот
lots2=Balance*(1-Risk)*leverage/contract/bid=0.95*10,000*100/100,000/1.25=7.6 лотов
Получается что максимальное количество лотов ограничено стоплоссом в данном примере. Пожалуйста, внесите исправления если есть ошибки в моих формулах. Заранее благодарен.