Скачать MetaTrader 5

Помогите с индикатором

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Вся активность MQL5.community у тебя на ладони. Заходи в раздел Стена!
Forex Trader
114255
Forex Trader 2007.05.30 18:39 
Здравствуйте. Я пробовал создать индикатор. И по моему кое что получается. Но есть одна проблема. Когда во время теста в тестере я прикрепляю индюк он чертит стрелки как надо. Когда я поставлю другие индюки на график (Например Asctrendsig ) он ставит свои стрелочки на вес график, а мой поставит только на текущем баре. Как можно сделать чтобы он поставил стрелочки на вес график?? Вот то что я сделал:
(Индюк я сделал на основе одного из сущ. индюков, только условие менял, поэтому не всё понятно мне на этом тексте)
//+------------------------------------------------------------------+
//| signal.mq4 |
//| Copyright © 2007, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"

#property indicator_chart_window
#include <stdlib.mqh>
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Blue
extern double davr=5;
extern double davrs=4;
extern double umfi=85;
extern double usto=87;

//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
void SetLoopCount(int loops)
{
}

//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
SetIndexStyle(0,DRAW_ARROW,STYLE_SOLID,2);
SetIndexArrow(0,234);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexEmptyValue(0,0.0);
SetIndexStyle(1,DRAW_ARROW,STYLE_SOLID,2);
SetIndexArrow(1,233);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexEmptyValue(1,0.0);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
SetLoopCount(0);
int pos=0;
int cbars=IndicatorCounted();
//IndicatorCounted();

if (cbars<0) return(-1);
if (cbars>0) cbars--;

//---- TODO: add your code here
//if (cbars > (Bars-40)) pos=(Bars-40);
//else pos=cbars;
pos=cbars;

while (pos > 0) {
Comment(pos);
//ExtMapBuffer1[pos]=NULL;
//ExtMapBuffer2[pos]=NULL;

// double val=iStdDev(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,0);
SetIndexShift(0,-pos);
SetIndexShift(1,-pos);

double t1=iMFI(NULL,0,davr,0);
double t11=iMFI(NULL,0,davr,1);

// if (val>0.0015) {
if (t11<(100-umfi) && t1>(100-umfi)) ExtMapBuffer2[0]=Low[pos];

if (t11>umfi && t1<umfi) ExtMapBuffer1[0]=High[pos];
// }
pos--;
//----
}
//----

return(0);
}
//+------------------------------------------------------------------+
Заранее блогадарью
Forex Trader
114255
Forex Trader 2007.05.30 21:52  
Извините. Вопрос решён. Можно удалит пост.
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий