[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 722

 
IgorM:


вся проблема была в объявлении переменной:

 

Таки нет. Я ее пробовал объявлять и в начале кода, где параметры, и перед счетчиками.
 
IgorM:


ставьте пока всегда после for фигурные скобки, потом освоитесь уберете

Щас пробью по всему коду :)


Всем спасибо!

 
Abzasc:

Щас пробью по всему коду :)

Без скобок, в зону действия условий (if, while, for) попадает только один оператор. Если их нужно более одного, то использование фигурных скобок обязательно. 

 
ToLik_SRGV:

Без скобок можно использовать после условий (if, while, for) только один оператор. Если их более, то использование фигурных скобок обязательно. 

Теперь выучил :)
 

Друзья! Чёт-то не соображу... Есть трендовая, построенная на графике индюкатора AD (в данном случае трендовая UP). При пересечении этой трендовой сверху-вниз линией индюкатора имеем, так сказать, предварительный сигнал на продажу. Если на первом баре линия индюка останется ниже трендовой - вероятна продажа. Никак не могу понять как же мне сопоставить значение трендовой на 0 баре значению цены на 0 баре и значение трендовой на 0 баре. Заумно как-то написал... Допустим - я могу рассчитать проекцию трендовой линии на нулевой или первый бар, скажем, по уравнению прямой... Но вот как выудить от-туда значение полученной точки на график цены... ??? Не пойму... Ведь мне же в конечном итоге нужно понять, что цена пересекла трендовую сверху-вниз... В то же время - причём тут цена, коли я по индюкатору смотрю... Но, всё-же как сопоставить уровень, рассчитанный по уравнению прямой с ценой? Запутался я короче... Может кто распутает меня???


Трендовая на графике цены, прочерченная от минимумов баров, на которых были найдены экстремумы на графике AD совсем ни о чём не говорит, да и не к месту тут она...

 

Выставляю SL и TP равным нулю -- не работает, ордера не выставляются.

Или это вечер и усталость?

//+------------------------------------------------------------------+
//|                                                         Grid.mq4 |
//|                                                     Yuriy Tokman |
//|                                            yuriytokman@gmail.com |
//+------------------------------------------------------------------+
#property copyright "Yuriy Tokman"
#property link      "yuriytokman@gmail.com"

#property show_inputs

extern double volume = 0.1;
extern int price = 500;
extern int slippage = 30;
extern int stoploss = 500;
extern int takeprofit = 500;
extern int steps = 500;
extern int count_orders = 5;

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
   double buy_price = Ask+price*Point;
   double sell_price = Bid-price*Point;

   int ticket;

   for(int i = 0;i<count_orders;i++)
    {
     
     ticket=OrderSend(Symbol(),OP_SELLSTOP,volume,
     sell_price-i*steps*Point,slippage,
     sell_price-i*steps*Point+stoploss*Point,
     sell_price-i*steps*Point-takeprofit*Point,
     "yuriytokman@mail.com    "+i+" *");
     if(ticket<0)
       {
        Print(i,"  OrderSend failed with error #",GetLastError());
        return(0);
       }

     ticket=OrderSend(Symbol(),OP_BUYSTOP,volume,
     buy_price+i*steps*Point,slippage,
     buy_price+i*steps*Point-stoploss*Point,
     buy_price+i*steps*Point+takeprofit*Point,
     "yuriytokman@mail.com    "+i+" *");
     if(ticket<0)
       {
        Print(i,"  OrderSend failed with error #",GetLastError());
        return(0);
       }     
         
    }
//----
   return(0);
  }
//+------------------------------------------------------------------+
Файлы:
grid.mq4  2 kb
 
Swetten:

Выставляю SL и TP равным нулю -- не работает, ордера не выставляются.

Или это вечер и усталость?

Сильно не пинать, сам учусь:)

Вот это buy_price+i*steps*Point-stoploss*Point,

цена продажи + счетчик*500... там не много получается? Без SL и TP множитель, может, поменьше надо... 

 

По ходу кода имеем такую конструкцию:

LastTimeDN     =TimeDN[l-1];
LastVarDN      =PeakDN[l-1];
PreLastTimeDN  =TimeDN[l];
PreLastVarDN   =PeakDN[l];
LastTimeDN и PreLastTimeDN имеют тип datetime. После выполнения вышеперечисленных операций эти переменные содержат кол-во секунд с года... моего рождения ...
Подскажите как мне их преобразовать в номера баров ?
 
artmedia70:

как сопоставить уровень, рассчитанный по уравнению прямой с ценой?

Угол учитывать надо, сложно как то... 

А что значит "цена пересекла трендовую сверху-вниз"? Цена пересекла, значит, и индикатор ее пересек. Не? 

 

Swetten:

Выставляю SL и TP равным нулю -- не работает, ордера не выставляются.

Или это вечер и усталость?

Вот, все работает на 5-ти знаке. Может вы на 4-х знаке работаете, тогда просто сожмите масштаб по цене или уменьшите параметры скрипта.


Причина обращения: