[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 239

 
deyron:

Уважаемый Roman - Я ЗАПУТАЛСЯ!!!! и с F1 я знаком. Когда я делаю отдельно индикатор с одним буфером то в советнике:

Тогда все передается как положено.

Ответ:

внеш.парам. индика

... - Список параметров (при необходимости). Передаваемые параметры должны соответствовать порядку объявления и типу внешних (extern) переменных пользовательского индикатора.

double Ind=iCustom( , , ,"XXXX",внеш.парам. индика,7,0) - получение значения пользовательского индикатора из 8 (ВОСЬМОГО) буфера на текущей свече.
 
Спасибо большое!)
 
costy_:

Для надежности (некоторые дц) сначала открываем поз-ю, потом модофиц. стопы раздельно в цикле если не получится модифиц на тике!

Можете воспользоваться этим

«Блокировка» Error 130

или код в студию (надо видеть что там понаписано )).

БОЛЬШОЕ СПАСИБО!!!!!

В понедельник опробую....

 

Господа, помогите, где маху дал))

#property indicator_buffers 1

double Crit[];
bool Crit1;
//+------------------------------------------------------------------+
int init()
  {
   SetIndexBuffer(0,Crit);
   return(0);
  }
//+--------------------------+
int start(){
  Crit[0]=Crit_div();
   return(Crit1);}
//+--------------------------+
double Crit_div(){
   double MA_5_1=iMA(NULL,0,5,0,MODE_SMA,PRICE_CLOSE,0);
   double MA_5_2=iMA(NULL,0,5,0,MODE_SMA,PRICE_CLOSE,1);
   double MA_5_3=iMA(NULL,0,5,0,MODE_SMA,PRICE_CLOSE,2);   

   double MA_8_1=iMA(NULL,0,8,0,MODE_SMA,PRICE_CLOSE,0);
   double MA_8_2=iMA(NULL,0,8,0,MODE_SMA,PRICE_CLOSE,1);
   double MA_8_3=iMA(NULL,0,8,0,MODE_SMA,PRICE_CLOSE,2);   
   
   
   if(MA_5_1>MA_8_1 && MA_5_2<=MA_8_2 && MA_5_3<=MA_8_3 )
   Crit1=true;

   if(MA_5_1<MA_8_1 && MA_5_2>=MA_8_2 && MA_5_3>=MA_8_3 )
   Crit1=false;

   return(Crit1);}


В Советнике пишем:

   double Sign=iCustom(Symbol(),0,"1111",0,0);

Через Comment получаем 0 или 1. Что и хотели. Дальше: Т.к. в индикаторе буферы от 0 до 5 заняты я делаю так:

#property indicator_buffers 6

double Crit[];
bool Crit1;
//+------------------------------------------------------------------+
int init()
  {
   SetIndexBuffer(5,Crit);
   return(0);
  }
//+--------------------------+
int start(){
  Crit[5]=Crit_div();
   return(Crit1);}
//+--------------------------+
double Crit_div(){
   if(//условие)Crit1=true;
   if(//условие)Crit1=false;
   return(Crit1);}

В Советнике пишем:

   double Sign_diver=iCustom(Symbol(),0,"1111",5,0);

Через Comment получаем:2146487826. Хотя ожидал увидеть 0 или 1((((

 
deyron:

Господа, помогите, где маху дал))

В Советнике пишем:

Через Comment получаем 0 или 1. Что и хотели. Дальше: Т.к. в индикаторе буферы от 0 до 5 заняты я делаю так:

В Советнике пишем:

Через Comment получаем:2146487826. Хотя ожидал увидеть 0 или 1((((






Нужен полный код индикатора
 

помогите с решением..

есть ордер по цене 1.1111. как проверить есть ли еще открытые ордера в диапазоне 5-ти пунктов от него? ((

 
Здравствуйте
что то у меня MetaEditor не хочет работать
т.е. нажимаю компиль а он ни чего не делает
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//----
Comment("Hello");
//----
   return(0);
  }
//+------------------------------------------------------------------+
Может кто сталкивался???
 

спасибо. это я видел. но там -

Возвращает флаг существования позиции или ордера около рынка

а мне нужно не около рынка а около конкретной цены.

пример: рынок в 1.3262, а нужно узнать в диапазоне 5-ти пунктов от 1.1111

 
Vinin:

Нужен полный код индикатора

Выше постом под корректировал. Ничего там нет(пустой) критерии прохода одной МА через другую и наоборот.

Сам факт того, что если один буфер- то вопросов нет, но тоже самое через 2,3-ий или 4-ий, то не передается.Вернее не получается