0
Да скиньте ссылку на файлик или форум.
avatar

AM2

  • 1 ноября 2015, 16:51
0
или как там по МА фильтруют

Это зависит от фантазии пользователя, поэтому и вопрос :) 
Завтра добавлю.
avatar

AM2

  • 1 ноября 2015, 15:54
+1
Полсотни индикаторов RSI в том числе и мультитаймфреймовые: www.opentraders.ru/downloads/914/

avatar

AM2

  • 1 ноября 2015, 15:52
0
Можно ссылку на скомпилированный индикатор?
avatar

AM2

  • 1 ноября 2015, 15:26
0
И как всегда декомпилированый индикатор да еще с кучей ошибок *think* 
avatar

AM2

  • 1 ноября 2015, 15:15
0
Завтра буду смотреть.
avatar

AM2

  • 1 ноября 2015, 15:11
0
фильтр по МА


С этого момента поподробнее пожалуйста.
avatar

AM2

  • 1 ноября 2015, 15:09
0
Все-таки хотелось бы доделать советник.Самое важное: после открытия любых трех ордеров должна начать сортировка ордеров.Четвертый ордер ( пусть это будет BUY) должен открываться только в том случае, если среди трех имеющихся открытых ордеров хотя бы один ордер имеет противоположное направление (SELL) к четвертому ордеру. Среди SELL-ордеров следует закрыть ордер с самым большом профитом.


С сортировкой ордеров это к платному. Я как то пробовал это делать тогда у меня не получилось.
avatar

AM2

  • 30 октября 2015, 22:01
0
Поправил бай, добавил ступенчатый трал. Меню на русском приведите пример.
www.opentraders.ru/downloads/912/
avatar

AM2

  • 30 октября 2015, 21:52
0
Здесь тоже не совсем нормально. Цифры повторяются.


Основа есть, остается немного поработать с отладчиком :) 
avatar

AM2

  • 30 октября 2015, 20:28
0
Даже с этой функцией?


if(StarBBBlue!=BBBlue)
     {
      if(IsTesting()) Log(DoubleToString(NormalizeDouble(BBBlue,Digits)));
      StarBBBlue=BBBlue;
     }
avatar

AM2

  • 30 октября 2015, 17:41
0
Чтобы реализовать этот вариант, нужно как можно подробнее описать полностью алгоритм открытия ордеров после трех.
avatar

AM2

  • 30 октября 2015, 17:36
0
Вот таким образом нормально пишет:


   if(StarBBBlue!=BBBlue)
     {
      if(IsTesting()) Log(DoubleToString(NormalizeDouble(BBBlue,Digits)));
      StarBBBlue=BBBlue;
     }


1.12602000
1.12602000
1.12679000
1.12770000
1.12770000
1.12868000
1.12976000
1.13111000
1.13320000
1.13320000
1.13351000
1.13438000
1.13505000
1.13507000
1.13507000
1.13523000
1.13523000
1.13539000
1.13545000
1.13545000
1.13545000
1.13546000
1.13546000
1.13550000
1.13550000
1.13572000
1.13572000
1.13589000
1.13589000
1.13604000
1.13604000
1.13605000
1.13605000
avatar

AM2

  • 30 октября 2015, 15:58
0
Сейчас в советнике есть все основные функции. смотрите, пишите что добавить или убавить: www.opentraders.ru/downloads/912/


avatar

AM2

  • 30 октября 2015, 15:27
0
Я начал делать.
avatar

AM2

  • 30 октября 2015, 14:27
0
ТЗ советника по индикатору igrok на пятизнаке.

индикатор показывает максимум и минимум дня, суть в том, чтоб выставлять отложенные ордера за уровнями индикатора бай и селл, стопы и тейки.
особенность выставления отложенного ордера:

если цена прошла допустим 300пп от максимума, то выставляется отложенный ордер, а где 270 пп., там не ставим (значения можно менять от 1пп до 1000+пп) также выставление стопов.

Отложенный ордер должен выставятся на выбранном расстоянии от максимума, минимума(возможность выбирать расстояние)
выбор траллить или нет, перевод в БУ при достижении «N» количества пп, после чего траллить или нет, длина тралла(расстояние тралла от цены)

выбор убирать не сработанный ордер на следующий день или нет
если можно то в пятницу вечером убирать все не сработанные ордера
итак итого:

обязательно пятизнак.
выставление стопов и тейков.
тралл (выбор) длина трала от цены.
перевод в БУ при «N» количестве пп. после чего траллить или нет (выбор).
выбор растояния выставления ордера от максимума, минимума(обязательно).
удаление несработанных ордеров на следующий день или второй (выбор).

возможность удаление несработанных ордеров в пятницу вечером(если возможно).
ордер выставляется 1 раз над максимумом, минимумом или выбор сколько раз (если сработал стоп, а условия снова совпали).
avatar

AM2

  • 30 октября 2015, 14:06
0
Так получилось?

if (old_IND_1 != IND_1) { 
if(IsTesting()) Log();
else 
return (0); 
} 
avatar

AM2

  • 30 октября 2015, 13:59
0
Если не нашли ничего подходящего, сделаю по ТЗ.
avatar

AM2

  • 30 октября 2015, 13:57
0
Пользовались поиском по базе? Здесь много советников на пробой дня.
avatar

AM2

  • 29 октября 2015, 21:22
0
Советник для примера. Данный код запишет данные индикатора в файл:


//+------------------------------------------------------------------+
//|                                                         ExBB.mq4 |
//|                                              Copyright 2015, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2015, AM2"
#property link      "http://www.forexsystems.biz"
#property description "BBands expert advisor"

//--- Inputs
extern double Lots         = 0.1;  // лот
extern int    StopLoss     = 500;  // лось
extern int    TakeProfit   = 500;  // язь
extern int    Slip         = 30;   // слипаж
//----
extern int    Length       = 20;   // период BB 
extern double Deviation    = 2;    // отклонение ВВ
extern int    Magic        = 20;   // магик
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//| Check for open order conditions                                  |
//+------------------------------------------------------------------+
void OpenPos()
  {
   int    res;
//--- get Ind
   double BBBlue=iCustom(Symbol(),0,"BBands_Stop_v1",Length,Deviation,0,1);
   double BBRed=iCustom(Symbol(),0,"BBands_Stop_v1",Length,Deviation,1,1);
   if(IsTesting()) Log(DoubleToString(NormalizeDouble(BBBlue,Digits)));
//--- sell conditions
   if(BBRed>0)
     {
      res=OrderSend(Symbol(),OP_SELL,Lots,NormalizeDouble(Bid,Digits),
                    Slip,NormalizeDouble(Bid+StopLoss*Point,Digits),
                    NormalizeDouble(Bid-TakeProfit*Point,Digits),"",Magic,0,Red);
      return;
     }
//--- buy conditions
   if(BBBlue>0)
     {
      res=OrderSend(Symbol(),OP_BUY,Lots,NormalizeDouble(Ask,Digits),
                    Slip,NormalizeDouble(Ask-StopLoss*Point,Digits),
                    NormalizeDouble(Ask+TakeProfit*Point,Digits),"",Magic,0,Blue);
      return;
     }
//---
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void Log(string s="")
  {
//--- Открываем файл лога
   int fileHandle=FileOpen("MyLog.csv",FILE_READ|FILE_WRITE|FILE_CSV);
   if(FileSeek(fileHandle,FileSize(fileHandle),SEEK_SET))
      FileWrite(fileHandle,s);
   FileClose(fileHandle); // закрываем файл лога
  }
//+------------------------------------------------------------------+
int CountTrades()
  {
   int count=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==OP_BUY || OrderType()==OP_SELL)
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//| OnTick function                                                  |
//+------------------------------------------------------------------+
void OnTick()
  {
   if(CountTrades()<1) OpenPos();
  }
//+------------------------------------------------------------------+



1.11852000
1.12665000
-1.00000000
-1.00000000
-1.00000000
-1.00000000
1.12273000
1.12810000
1.12810000
1.13004000
1.13815000
-1.00000000
-1.00000000
-1.00000000
-1.00000000
1.11105000
1.11105000
1.11596000

Пишет в папку Tester/Files/
avatar

AM2

  • 28 октября 2015, 23:39