Предложения торговых систем для автоматизации У вас есть ручная торговая система, которая вам нравится и приносит доход, но вы хотели бы ее автоматизировать? Ждем ваше предложение.

Ответить
06.11.2012, 10:02
Аватар для Norokir
Norokir Norokir вне форума Интересующийся
Регистрация: 06.11.2012 / Сообщений: 7
Поблагодарили 1 раз в 1 сообщении / Репутация: 2

По умолчанию Простой советник по стратегии

Здравствуйте, хотел написать советник сам, но никак не получается..

Стратегия такая, используется один индикатор - обычный MACD.

Входные параметры:
External: fastEMA (быстрая ЕМА в MACD), slowEMA (медленная ЕМА в MACD), SMA (MACD SMA), Lot, StopLoss, Bar (0 - текущий, 1 - предыдущий и.т.д.)

===============================================

Условия покупки:
Бар №Bar имеет значение > 0 И > SMA – открытие BUY позиции с параметрами StopLoss и Lot, без TakeProfit.

Закрытие сделки:
Бар №Bar < SMA ИЛИ < 0

===============================================

Условия продажи:
Бар №Bar имеет значение < 0 И < SMA – открытие SELL позиции с параметрами StopLoss и Lot, без TakeProfit.

Закрытие сделки:
Бар №Bar > SMA ИЛИ > 0



Советник вроде простой, если кто-нибудь может помочь на бесплатной основе, буду крайне благодарен. Спасибо!
07.11.2012, 09:12
Аватар для Norokir
Norokir Norokir вне форума Интересующийся
Регистрация: 06.11.2012 / Сообщений: 7
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
Вы, вероятно, полагаете, что я просто решил получить эксперт нахаляву
Но я на самом деле пытался сам написать его. Привожу здесь код, который у меня получился:

Код


Код:
// Входные параметры.
extern int fastEMA = 5;
extern int slowEMA = 50;
extern int SMA = 20;
extern double Lot = 1;
extern int SL = 500; //Для пятизнаковой системы.
extern int Bar = 1; //Предыдущий (закрытая свеча).
int MagicBUY = 777;
int MagicSELL = 888;

int init()
  {
   return(0);
  }

int deinit()
  {
   return(0);
  }

int start()
  {
  int OrdTotal = OrdersTotal(); // Количество открытых ордеров.
  // Задаем переменные со значениями MACD и SMA.
  double MACDvalue=iMACD(NULL,0,fastEMA,slowEMA,SMA,PRICE_CLOSE,MODE_MAIN,Bar);
  double SMAvalue=iMACD(NULL,0,fastEMA,slowEMA,SMA,PRICE_CLOSE,MODE_SIGNAL,Bar);
//Заключение сделок. 
  // Условие покупки.
  if (OrdTotal == 0) //Чтобы ордера не открывались каждый тик.
  {
    if (MACDvalue > 0) 
    {
      if (MACDvalue > SMAvalue)
      {
         OrderSend(Symbol(), OP_BUY, Lot, Ask, 3, Bid-SL*Point, 0, NULL, MagicBUY, 0, CLR_NONE);
      }
    }
  }
   //Условие продажи.
   if (OrdTotal == 0)
  {
    if (MACDvalue < 0) 
    {
      if (MACDvalue < SMAvalue)
      {
         OrderSend(Symbol(), OP_SELL, Lot, Bid, 3, Bid-SL*Point, 0, NULL, MagicSELL, 0, CLR_NONE);
      }
    }
  }
//Закрытие сделок.
   //Закрытие SELL сделки.
   if (MACDvalue > 0) 
   {
     OrderClose(MagicSELL,Lot,Ask,3,CLR_NONE);
   }
   if (MACDvalue > SMAvalue)
   {
     OrderClose(MagicSELL,Lot,Ask,3,CLR_NONE);
   }
   //Закрытие BUY сделки.
   if (MACDvalue < 0) 
   {
     OrderClose(MagicBUY,Lot,Ask,3,CLR_NONE);
   }
   if (MACDvalue < SMAvalue)
   {
     OrderClose(MagicBUY,Lot,Ask,3,CLR_NONE);
   }
  return(0);
 }
[свернуть]


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

Если написать эксперта возможности ни у кого нет, прошу помочь с данным кодом, найти ошибку.
Прилагаю к сообщению mq4 файл. Спасибо.
07.11.2012, 10:22
Аватар для Norokir
Norokir Norokir вне форума Интересующийся
Регистрация: 06.11.2012 / Сообщений: 7
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
Эх, пока с этой премодерацией сообщение появится, уже все сам успеваешь решить
Все сделал, все работает. Тема закрыта.
Ответить


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 13:34. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO