Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 684
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Есть индикатор MA. А есть ему подобный HMA. Как его можно вставить в советник? Полностью копировать код? Или есть более укороченный вариант?
изучайте iCustom
Идея очень хорошая,а вы не встречали такие программы здесь,что бы передавали или копировали сделки на другие терминалы.получилось бы без услуг брокера можно было бы это сделать хорошо?
Такой?
Есть индикатор MA. А есть ему подобный HMA. Как его можно вставить в советник? Полностью копировать код? Или есть более укороченный вариант?
Всех приветствую.У меня проблема-"потерял" индикатор.Это какой-то сглаженный CCI,у которого можно было изменять два параметра-период и какой-то множитель.В оригинальном варианте эти параметры были равны соответственно 20 и 2.И,если я всё правильно помню,название этого индикатора состояло из двух слов и второе слово начиналось с английской буквы "С".Вдруг кто знает,помогите!
Но в целом, конечно, можно перегрузить и конструктор и использовать его вместо Init(), в конце концов, это такая же функция. На какой вариант фапать - это личное дело каждого, в вопросах вкуса, как известно, советчиков нет)
А если инициализация не удалась, то в случае использования метода, например, Init(), можно его описать возвращающим значение соответствующего типа и вернуть в случае ошибки соответствующее значение. Вызывающий код, таким образом, узнает о неудавшейся инициализации, и о том, что объект поэтому использовать нельзя. Как вызывающий код узнает о неудавшейся инициализации в случае использования конструктора?
Ребзя хелп , как заставить сова не открывать ордер на том же баре что и была позиция открыта ранее по сигналу , а ждал новый бар и снова проверка сигнала , делал типо так - побарно
добавлял это -
и -Ребзя хелп , как заставить сова не открывать ордер на том же баре что и была позиция открыта ранее по сигналу , а ждал новый бар и снова проверка сигнала , делал типо так - побарно
добавлял это -
и -Как-то так:
Как-то так:
Спасибо , не усложнит расшифровать прописанные строчки для примера ?--//выбранный ордер открыт на нулевом (текущем) баре, значит ещё рано открывать следующий
// выбранный ордер открыт не на нулевом (текущем) баре, значит можно открывать следующий ...???
Спасибо , не усложнит расшифровать прописанные строчки для примера ?--//выбранный ордер открыт на нулевом (текущем) баре, значит ещё рано открывать следующий
// выбранный ордер открыт не на нулевом (текущем) баре, значит можно открывать следующий ...???
Вот функция, возвращающая бар открытия последней открытой позиции:
Если функция возвращает -1, значит нет открытой позиции, данные которой переданы в функцию.
Пример использования:
или
Знатоки прошу у Вас помощи...
алгоритм test01
//+------------------------------------------------------------------+ //test //+------------------------------------------------------------------+ #property indicator_separate_window #property indicator_buffers 2 #property indicator_color1 clrGold #property indicator_color2 clrBlue #property indicator_level1 0 //--- indicator buffers double Buf0[]; double Buf1[]; double t1[]; double t2[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { IndicatorBuffers(4); SetIndexBuffer(0,Buf0); SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(1,Buf1); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(2,t1); SetIndexBuffer(3,t2); //--- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int i,counted_bars; counted_bars=IndicatorCounted(); i=Bars-counted_bars-1; int sr=24,n; double sum,sum2; double m1,m2; while(i>=0) { sum=0; sum2=0; for(n=i; n<=i+sr-1; n++) { if(Open[i]>Open[i+1]) m1=sum=sum+Close[i]-Close[n]; if(Open[i]<Open[i+1]) m2=sum=sum+Close[i]-Close[n]; if(Open[i]>Open[i+1]) t1[i]=sum2=sum2+Close[i]-Close[n]; if(Open[i]<Open[i+1]) t2[i]=sum2=sum2+Close[i]-Close[n]; } Buf0[i]=(m1+m2)/sr; Buf1[i]=(t1[i]+t2[i])/sr; i--; } return(0); } //+------------------------------------------------------------------+
почему в Buf1 отличные значения от Buf0? по логике вещей они должны быть одинаковы?
почему через переменную одни значения, а через буфер (масив данных)--> (масив требуется для дальнешего расчета) другие значения? как через масив сделать также как и через переменные м1 и м2