Tradersforum - форум трейдеров рынка ФОРЕКС
 
Главная Форум Блоги Статьи Файлы Рабочий кабинет Контакты
 
Календарь экономических событий для рынка Форекс

Календарь Форекс → смотреть

Понятный. Точный. Удобный. Быстрый. Информативный.

Последние дискуссии на форумах
Название темыАвторОтветовПросмотровПоследний ответ
   Аналитика от компании ФорексМарт(forexmart)
LenaForexMart132186114723.11 01:21LenaForexMart
   ВПН
Jenya72618519.11 17:48Jenya7
   ФорексМарт (forexmart)
LenaForexMart3137489619.11 17:41LenaForexMart
   Instaforex брокер
MariyaInstaForex2458397519.11 15:49IrinaInstaForex
   Аренда манипулятора в Минске
Jenya7020516.11 21:32Jenya7
   Forex4you
4EL58798899105.11 18:41veggi
   Betatransfer.net - прием платежей для High Risk проектов, интернет эквайринг и мерчант онлайн оплат
seter5412528.10 10:34seter

3.3.07 20:30 | MetaQuotes Language II - учимся программировать. Урок №5
Раздел: MQL программирование | Автор: admin | Рейтинг: 4.00 (1) Оценить | Хитов 3524
MetaQuotes Language II - учимся программировать. Урок №5

Обучение MQL II Урок №5



   Здравствуйте дорогие читатели! Сегодня мы научимся писать эксперты с использованием встроенных индикаторов. В МТ реализовано довольно много индикаторов классического теханализа, так что поле для действий довольно большое. В конце урока мы напишем эксперт.

   5.1. Синтаксис индикатора в общем виде

   iInd(period, mode, shift);

   Ind - условное название индикатора;
   Period - период усреднения;
   Mode - чаще всего указывает какое из значений индикатора принимается (для индикаторов из двух линий)
   Shift - индекс указывает, какое порядковое значение индикатора брать для расчета (0 это текущее значение индикатора, 1-прошлое, 2-позапрошлое и т.д. по аналогии с индексами при котировках).  Перед названием индикатора <Ind> стоит буква i, это обязательно для всех индикаторов в МТ.

 

   5.2. Скользящие средние

   Скользящие средние являются самым распространенным индикатором. Поэтому я бы хотел разобрать этот индикатор более подробно.

   Moving Average (iMA)
   iMA(period, ma_method, shift)

   period - период усреднения;
   ma_method - этот параметр указывается для метода вычисления средней, параметр может принимать

следующие значения:
   MODE_SMA,
   MODE_EMA,
   MODE_SMMA,
   MODE_LWMA.

 Пример:

   iMA(21, MODE_SMA, 1)- прошлое значение скользящей средней простого типа с периодом усреднения 21
   iMA(9, MODE_EMA, 0)- текущее значение скользящей средней экспоненциального типа с периодом усреднения 9

   По умолчанию индикаторы строятся от цен закрытия, поэтому значения индикаторов с индексом 0, т.е текущие значения на формирующимся баре будут все время меняться вместе с ценой.

 

   5.3. Extended (расширенные) индикаторы
  
   Как я уже говорил, индикаторы чаще всего строятся от цен закрытия <close>. Это не всегда удовлетворяет запросам пользователей, поэтому в арсенале МТ есть extended (расширенные) индикаторы. На текущий момент существует 7 extended индикаторов:

   ADX extended
   iADXEx (period ,applied_price, mode, shift)

   CCI extended
   iCCIEx (period, applied_price, shift)

   Bolinger bands extended iBandsEx (period, deviation, bands_shift, applied_price, mode, shift)

   MACD extended
   iMACDEx (fast_ema_period, slow_ema_period, signal_period, applied_price, mode, shift)

   Moving average extended
   iMAEx (period, ma_method, ma_shift, applied_price, shift)

   Momentum extended
   iMomEx (period, applied_price, shift)

   RSI extended
   iRSIEx (period, period2, applied_price, mode, shift)

   Если Вы заметили, у любого из расширенных индикаторов есть параметр <applied_price>. Этот параметр может принимать 7 значений: PRICE_CLOSE, PRICE_OPEN, PRICE_HIGH, PRICE_LOW, PRICE_MEDIAN, PRICE_TYPICAL и PRICE_WEIGHTED. Т.е индикатор может строится от цены закрытия, цены открытия, максимальной цены, минимальной цены, PRICE_MEDIAN ( (high+low)/2), PRICE_TYPICAL ((high+low+close)/3 ), PRICE_WEIGHTED ((high+low+close+close)/4 ). Все названия расширенных индикаторов заканчиваются буквами <Ex>, и только этим отличаются от названий таких же стандартных индикаторов.

 

   5.4. Эксперт

   Для закрепления знаний, напишем эксперт. Он будет использовать 2 индикатора, скользящую среднюю с большим периодом и RSI. Если RSI выше определенной нами верхней оверзоны, развернулся вниз и средняя направлена вниз, то эксперт будет продавать. Если RSI ниже нижней оверзоны, развернулся вверх и средняя направлена вверх, то покупаем. Выход из позиции осуществляется по выставленным стопам.

/*[[
Name := Expert4
Author := Fxtest.ru
Link := forextimes.ru
Lots := 1.00
Stop Loss := 40
Take Profit := 40
Trailing Stop := 0
]]*/
defines:
per(7), Upzone(70), Downzone(30), BigTrend(100);
//per-период RSI; Upzone, Downzone-оверзоны, BigTrend - период средней показывающей глобальный тренд
var: r1(0), r2(0), m1(0), m2(0);
// r1-прошлое значение RSI r2-позапрошлое значение RSI

r1=iRSI(per,1);
r2=iRSI(per,2);
m1=iMA(BigTrend, MODE_SMA,1); //MA простого типа (SMA)
m2=iMA(BigTrend, MODE_SMA,2);

if TotalTrades<1 then { //играть если открытых позиций нет

if r2>r1 and r2>Upzone and m1<m2 then //если образовался экстремум и он выше верхней оверзоны, и глобальный

тренд вниз, продавай
{SetOrder(op_sell, lots, bid, 3, ask+stoploss*point, ask-takeprofit*point, red); exit;};

if r2<r1 and r2<Downzone and m1>m2 then //если образовался экстремум и он ниже нижней оверзоны, и

глобальный тренд вверх, покупай {SetOrder(op_buy, lots, ask, 3, bid-stoploss*point, bid+takeprofit*point, green);

exit;};};

   В следующем уроке мы научимся обращаться к открытыми позициям и принудительно их закрывать, при срабатывании какого-либо условия.

Компания «Fxtest»
Халхальян Артур
техническая поддержка трейдеров
artur@fxtest.ru



 

  1 2 3 4 5 6 7 8 9 10  

Родственные ссылки
» Другие статьи раздела MQL программирование
» Эта статья от пользователя admin

5 cамых читаемых статей из раздела MQL программирование:
» Программирование на MQL II. Сортировка методом пузырька
» MetaQuotes Language II - учимся программировать. Урок №1
» MetaQuotes Language II - учимся программировать. Урок №5
» Программирование на MQL II. Поиск
» MetaQuotes Language II - учимся программировать. Урок №4

5 последних статей раздела MQL программирование:
» Программирование на MQL II. Поиск
» MetaQuotes Language II - учимся программировать. Урок №7
» Программирование на MQL II. Сортировка методом пузырька
» MetaQuotes Language II - учимся программировать. Урок №5
» MetaQuotes Language II - учимся программировать. Урок №4

¤ Перевести статью в страницу для печати
¤ Послать эту cтатью другу

MyArticles 0.6 beta for RUNCMS: by RunCms.ru

Наш форекс форум один из крупнейших форумов для трейдеров в Рунете. На форуме трейдеров мы обсуждаем рынок, стратегии игры трейдеров, прогнозы.
Множество трейдеров рынка Forex делятся своими стратегиями и дают торговые сигналы в реалтайм. Лучший Форекс календарь событий в мире
- Генерация страницы: 0.030744 секунд -