Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
Moving Average - эксперт для MetaTrader 4
- Просмотров:
- 25542
- Рейтинг:
- Опубликован:
- 2005.11.29 12:06
- Обновлен:
- 2014.04.21 14:52
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Советник Moving Average для формирования торговых
сигналов использует одну скользящую среднюю. Открытие и закрытие
позиций происходит, когда скользящая средняя пересекает цену на
только-что сформировавшемся баре (индекс бара равен 1). Размер лота
оптимизируется по специальному алгоритму.
Советник анализирует пересечение скользящей
средней и рыночного графика цены. Проверка проводится функцией
CheckForOpen(). Если скользящая средняя пересекает бар так, что она
выше цены Open и ниже Close, то открывается позиция BUY. Если
скользящая пересекает бар так, что линия ниже Open и выше Close, то
происходит продажа.
В советнике применен очень простой, но
эффективный Money Management: способ управления объемом каждой позиции
в зависимости от результатов предыдущих сделок. Указанный алгоритм
реализуется функцией LotsOptimized(). Расчет базового размера лота
происходит на основе максимально допустимого риска:
lot=NormalizeDouble(AccountFreeMargin()*MaximumRisk/1000.0,1);
Параметр MaximumRisk показывает базовое
процентное значение риска на каждую сделку. Обычно принимает значение
от 0.01 (1%) до 1 (100%). Например, если свободные средства
(AccountFreeMargin) равны $20500 и правила управления капиталом
рекомендуют использовать риск 2%, то размер базового лота будет 20500 *
0.02 / 1000 = 0.41. Очень важно контролировать точность размера лота и
явно выравнивать результат до допустимых значений. Обычно допустимы
дробные лоты с шагом 0.1. Сделка с объемом равным 0.41 не исполнится.
Для выравнивания используется функция NormalizeDouble() с точностью до
1 знака после запятой. В результате получается базовый лот равным 0.4.
Расчет базового лота на основе свободной маржи позволяет увеличивать
объем операций в зависимости от успешности торговли, то есть вести
торговлю с реинвестированием средств. Это есть базовый механизм при
обязательном управлении капиталом для повышения эффективности трейдинга.
DecreaseFactor - степень уменьшения размера
лота после неудачного трейда. Обычные значения - 2,3,4,5. Если
предыдущие сделки были убыточными, то последующие объемы уменьшаются в
DecreaseFactor раз, чтобы переждать неудачный период. В алгоритме
управления капиталом это самый главный фактор. Идея очень простая: если
торговля идет успешно в плюс, то советник работает базовым лотом,
зарабатывая по максимуму. После первой же убыточной сделки "сбавляет
обороты" до тех пор, пока не проведет положительную сделку. Алгоритм
позволяет отключить "сбавление оборотов", если указать DecreaseFactor =
0. В истории сделок подсчитывается количество последних подряд идущих
убыточных сделок. На их основе производится перерасчет базового лота:
if(losses>1) lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
Таким образом алгоритм позволяет эффективно снизить риск из-за череды предыдущих неудачных сделок.
В конце функции производится обязательная
проверка на минимально допустимый размер лота, так как в результате
ранее проведенных расчетов можно получить lot = 0:
if(lot<0.1) lot=0.1;
Советник предназначен главным образом для
работы на дневном периоде, а в режиме тестирования - по ценам закрытия.
Советник торгует только при открытии нового бара, поэтому режимы
детального потикового моделирования использовать не нужно.
Strategy Tester Report
Moving Average
Символ EURUSD (Euro vs US Dollar) Период 1 Час (H1) 2003.01.08 00:00 - 2003.11.25 00:00 Модель Все тики (на основе всех наименьших доступных периодов с фрактальной интерполяцией каждого тика) Параметры Lots=0.1; MaximumRisk=0.01; DecreaseFactor=1; MovingPeriod=16; MovingShift=11; Баров в истории 19368 Смоделировано тиков 656915 Качество моде лирования
25.00% Начальный депозит 10000.00 Чистая прибыль 1695.20 Общая прибыль 4293.20 Общий убыток -2598.00 Прибыльность 1.65 Матожидание выигрыша 10.80 Абсолютная просадка 40.35 Максимальная просадка (%) 318.50 (3.0%) Всего сделок 157 Короткие позиции (% выигравших) 73 (26.03%) Длинные позиции (% выигравших) 84 (32.14%) Прибыльные сделки (% от всех) 46 (29.30%) Убыточные сделки (% от всех) 111 (70.70%) Самая большая прибыльная сделка 262.55 убыточная сделка -91.00 Средняя прибыльная сделка 93.33 убыточная сделка -23.41 Максимальное количество непрерывных выигрышей (прибыль) 2 (387.15) непрерывных проигрышей (убыток) 7 (-287.25) Максимальная непрерывная прибыль (число выигрышей) 387.15 (2) непрерывный убыток (число проигрышей) -287.25 (7) Средний непрерывный выигрыш 1 непрерывный проигрыш 3
Trade - script sending BUY order and printing selected order data to the log.
Heiken AshiПример реализации пользовательского индикатора с использованием метода Heiken Ashi.
Предназначен для создания нестандартного периода символа на основе использования стандартного периода
Average Directional Movement Index, ADXИндикатор Индекс Среднего Направления Движения (Average Directional Movement Index, ADX) помогает определить наличие ценовой тенденции.