Проверьте пожалуйста мои вычесления лотов

 
Задача простая. Хочу рассчитать количество лотов, которое я могу купить рискуя Risk*Balance моего текущего баланса, где Risk<1 (допустим, Risk=0.05, то есть рискую 5% моего баланса). Позиция будет закрываться по StopLoss. Уравнение простое:

(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 лотов

Получается что максимальное количество лотов ограничено стоплоссом в данном примере. Пожалуйста, внесите исправления если есть ошибки в моих формулах. Заранее благодарен.
 
В моем советнике с чемпионата реализована проверка размера лота в зависимости от процента риска и инструмента- http://forum.alpari-idc.ru/thread33018.html
Ни разу не подвела.
 
Спасибо. Буду изучать. Попутный вопрос: при закачке вашего эксперта в МетаЕдитор (а также любого эксперта с интернета), русские буквы превращаются в загагулины, хотя они правильно отображаются в окне браузера. По моему, у меня какой-то русский фонт отсутствует. Не можете подсказать какой?
 
Tools -> Options -> Font -> Script: -> Cyrillic
 
Tools -> Options -> Font -> Script: -> Cyrillic


Спасибо огромное. Теперь всё в порядке с русскими буквами.
Причина обращения: