Да, ChartSetInteger(0,CHART_BRING_TO_TOP,true);Здравствуйте. В терминале открыто много вкладок с разными символами. Есть ли функция, которая может определенную вкладку символа сделать активной(т.е. переключиться на эту вкладку)?
Скорее всего ошиблись в функции iCustom, указали неверный набор входных параметров.Здравствуйте!
Подскажите почему пользовательский индикатор в тестере рисует много окон?
Если нужна панель, которая не будет открывать новый график, если по этому символу уже открыт, то держи.тут все же ясно, панель переключения графиков должна не дублировать обьекты) это так сложно понять???? ну вы жарите)))
Спасибо.Если нужна панель, которая не будет открывать новый график, если по этому символу уже открыт, то держи.
Открывает чистый график, если он не открыт.Спасибо, обьекты не дублирует на других графиках?
int i,counted_bars=IndicatorCounted(),half = MathFloor(FilterPeriod/2.0);
if (counted_bars<0) return(-1);
if (counted_bars>0) counted_bars--;
int limit = MathMin(MathMax(Bars-counted_bars,half),Bars-1);
Первые 3 строки оставляем, Попробуй заменить так:Как прописать переменную
Первые 3 строки оставляем, Попробуй заменить так:
if(MaxBars>Bars) MaxBars=Bars;
int limit = MathMin(MathMax(Bars-counted_bars,half),MaxBars);
Только MaxBars пропиши во входных. Но лучше бы код увидеть.
Первые 3 строки оставляем, Попробуй заменить так:
if(MaxBars>Bars) MaxBars=Bars;
int limit = MathMin(MathMax(Bars-counted_bars,half),MaxBars);
Только MaxBars пропиши во входных. Но лучше бы код увидеть.
Когда-же вы забудете это старьё как страшный сон? Ведь всё это писалось ещё в mql3 в котором было тараканов больше чем в студенческом общежитии.Неа, не получается, отписался в личку и скинул исходник.
input int shift = 50;
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
int limit = prev_calculated == 0 ? fmin(rates_total-1, shift) : rates_total-prev_calculated;
}
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
int limit = rates_total-prev_calculated;
if(prev_calculated == 0)
limit = fmin(rates_total-1, shift);
}
Моя конструкция работает. Переделывать весь индюк, написанный на старье с кучей глюков, мне лень! А твоя конструкция под тот индюк не подойдет. Судя по коду, это похоже на Младеновский хлам. Кстати, сам старый оператор используешь - fmin!Когда-же вы забудете это старьё как страшный сон?
Влад, ты с ума сошёл? Ты считаешь что я способен пользоваться чужим кодом?Моя конструкция работает. Переделывать весь индюк, написанный на старье с кучей глюков, мне лень! А твоя конструкция под тот индюк не подойдет. Судя по коду, это похоже на Младеновский хлам. Кстати, сам старый оператор используешь - fmin!
Всех с наступающим!
Привет! При чем тут чужой код - просто нужно было индюка доработать. Там в графиках индюка (такой он глючный) первые 144 бара ничего не рисует кроме пары вертикальных линий. Индюк полностью старый - даже стрикт не стал ему включать. Нужно было на самом деле рисовку этих первых слева баров убрать обычной SetIndexDrawBegin. Просто MERFY не все объяснил и в личке потом я код подправил. Я знаю про fmin. Здесь свои функции в mql и для меня fmin и fmax как-то выпадают из общего списка.Влад, ты с ума сошёл? Ты считаешь что я способен пользоваться чужим кодом?
Если индикаторы создают графический объект - он всегда доступен: "Список объектов" ->клац по кнопке"Все".Добрый день
Есть у меня несколько закрытых индикаторов и на основе них хотел написать советник. Раньше когда я писал другие советники, на основе других индикаторов, я обращался к объектам которые они рисовали на графике по имени, и на основе этих сигналов открывались сделки. Но в этих индикаторах режим перемещения объектов мышью отключен и имя графического объекта в списке объектов не отображается.
Как в такой ситуации можно еще обратится к данным индикаторам, для отображения сигнала для входа в сове?
Вам следует использовать ф-цию создания графических объектов ObjectCreate() и создать объект типа OBJ_BUTTON (кнопка), а для ввода значений: OBJ_EDIT (поле ввода). После создания, следует считывать данные с созданных объектов. Считывать можно как по тикам, по таймеру или с помощью ф-ции OnChartEvent(). Замечу, что в тестере будет работать только по тикам, при этом, для работы на реальном графике, удобнее использовать ф-цию OnChartEvent().Не подскажете как сделать на графике кнопку один клик по ней одно смещение, или ввод в окне на графике номер бара без захода в свойства индикатора.