Это 100% художественный вымысел!
usdjpy:
Есть описание вроде бы профитной стратегии в виде рассказа. Нужно перевести в алгоритм. Если это не художественный вымысел.
См. в прикрепленном файле.
По цифрам все сходится. Я пересчитывал. Проблема считать келли когда убытки и прибыль не равны.
Хоть ты и надоел мне своими сообщениями по аське, но облегчу твою участь. В прикрепленном файле архивированная электронная таблица Exel c формулами и комментариями по теме с учетом спредов и комиссионных. Формулы даны из расчета, что котировки в рэндже, т.е. вероятности закрыться по тейку и по лосю равны 0.5. Алгоритм линейный. Надеюсь, что формулы из Exel в MQL4 тебя не затруднит перевести? Сделай в виде отдельной функции расчет лотов и перед тем как открывать позицию проверяй, чтобы возвращаемое функцией значение не было отрицательным. Если оно отрицательно, то значит и Келли тоже отрицателен и матожидание будет меньше или равно 0. А значит либо денег на балансе недостаточно, либо уровни стопов малы, либо спреды и комиссионные слишком большие. По электронной таблице легче подобрать нужные значения, чем по тестированию эксперта, т.к. нагляднее и быстрее.Есть описание вроде бы профитной стратегии в виде рассказа. Нужно перевести в алгоритм. Если это не художественный вымысел.
См. в прикрепленном файле.
По цифрам все сходится. Я пересчитывал. Проблема считать келли когда убытки и прибыль не равны.
Примечание: все формулы даны из расчета того, что минимальный размер лота 0.1, залог по минимуму т.е. для 0.1 лота или цене 1 акции, стоимость пипса 1 на полный лот равна $1. Уровни стопов, спреды и комиссионные даны в $ для позиции объемом 0.1 лот. СтопЛоссы и ТейкПрофиты откладываются от Bid.
По аське пожалуйста ко мне больше не ломись. Если будут вопросы по этой теме, то здесь и задавай.
Файлы:
artexel.zip
3 kb
Reshetov:
Примечание: все формулы даны из расчета того, что минимальный размер лота 0.1, залог по минимуму т.е. для 0.1 лота или цене 1 акции, стоимость пипса 1 на полный лот равна $1. Уровни стопов, спреды и комиссионные даны в $ для позиции объемом 0.1 лот. СтопЛоссы и ТейкПрофиты откладываются от Bid.
По аське пожалуйста ко мне больше не ломись. Если будут вопросы по этой теме, то здесь и задавай.
usdjpy:
Есть описание вроде бы профитной стратегии в виде рассказа. Нужно перевести в алгоритм. Если это не художественный вымысел.
См. в прикрепленном файле.
По цифрам все сходится. Я пересчитывал. Проблема считать келли когда убытки и прибыль не равны.
Хоть ты и надоел мне своими сообщениями по аське, но облегчу
твою участь. В прикрепленном файле архивированная электронная
таблица Exel c формулами и комментариями по теме с учетом спредов
и комиссионных. Формулы даны из расчета, что котировки в рэндже,
т.е. вероятности закрыться по тейку и по лосю равны 0.5. Алгоритм
линейный. Надеюсь, что формулы из Exel в MQL4 тебя не затруднит перевести?
Сделай в виде отдельной функции расчет лотов и перед тем как
открывать позицию проверяй, чтобы возвращаемое функцией значение
не было отрицательным. Если оно отрицательно, то значит и Келли
тоже отрицателен и матожидание будет меньше или равно 0. А значит
либо денег на балансе недостаточно, либо уровни стопов малы,
либо спреды и комиссионные слишком большие. По электронной
таблице легче подобрать нужные значения, чем по тестированию
эксперта, т.к. нагляднее и быстрее.Есть описание вроде бы профитной стратегии в виде рассказа. Нужно перевести в алгоритм. Если это не художественный вымысел.
См. в прикрепленном файле.
По цифрам все сходится. Я пересчитывал. Проблема считать келли когда убытки и прибыль не равны.
Примечание: все формулы даны из расчета того, что минимальный размер лота 0.1, залог по минимуму т.е. для 0.1 лота или цене 1 акции, стоимость пипса 1 на полный лот равна $1. Уровни стопов, спреды и комиссионные даны в $ для позиции объемом 0.1 лот. СтопЛоссы и ТейкПрофиты откладываются от Bid.
По аське пожалуйста ко мне больше не ломись. Если будут вопросы по этой теме, то здесь и задавай.
double getLots(double TakeProfit) { double stopslevel = TakeProfit * Point / 10.0; double price = Bid; double balance = AccountBalance(); double spread = MarketInfo(Symbol(), MODE_SPREAD) * Point / 10.0; double comission = price / 100.0; double mean = 0.5; double lots = balance / price; double profit = (balance + stopslevel - spread - comission) / (price - stopslevel / 10.0) - lots; double loss = (balance - stopslevel - spread - comission) / (price + stopslevel / 10.0) - lots; double b = -profit / loss; double kelly = ((b + 1.0) * mean - 1.0) / (b * (-loss)); double result = kelly / 10.0; return result; }Вот код функции. Только один ботаник сказал что теория правильная а реализация нет. Функция считает келли для 0.1 лота. А на выходе совсем другой результат. Ботаник посоветовал подставлять методом половинного деления takeprofit пока на выходе не получим 0.1. Этот тейк и будет точным уровнем стопов для позиции. Когда так сделал все заработало.

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
См. в прикрепленном файле.
По цифрам все сходится. Я пересчитывал. Проблема считать келли когда убытки и прибыль не равны.