0
А вот этот пример из учебника никак не поможет?

#property copyright "2009, MetaQuotes Software Corp." 
#property link      "https://www.mql5.com"
#property version   "1.00"
 
#property description "Пример вывода значений High[i] и Low[i]"
#property description "для баров, выбранных случайным образом"
 
double High[],Low[];
//+------------------------------------------------------------------+
//| Получим Low для заданного номера бара                            |
//+------------------------------------------------------------------+
double iLow(string symbol,ENUM_TIMEFRAMES timeframe,int index)
 
{
   
double low=0;
   
ArraySetAsSeries(Low,true);
   
int copied=CopyLow(symbol,timeframe,0,Bars(symbol,timeframe),Low);
   
if(copied>0 && index<copied) low=Low[index];
   
return(low);
 
}
//+------------------------------------------------------------------+
//| Получим High для заданного номера бара                           |
//+------------------------------------------------------------------+
double iHigh(string symbol,ENUM_TIMEFRAMES timeframe,int index)
 
{
   
double high=0;
   
ArraySetAsSeries(High,true);
   
int copied=CopyHigh(symbol,timeframe,0,Bars(symbol,timeframe),High);
   
if(copied>0 && index<copied) high=High[index];
   
return(high);
 
}
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
 
{
//--- выводим на каждом тике значения High и Low для бара с индексом,
//--- равным секунде поступления тика
   datetime t
=TimeCurrent();
   
int sec=t%60;
   printf
("High[%d] = %G  Low[%d] = %G",
          sec
,iHigh(Symbol(),0,sec),
          sec
,iLow(Symbol(),0,sec));
 
}
avatar

alex30774

  • 12 января 2024, 12:57
0
OSS5, от то что вы скопировали код индикатора в сообщение толку мало: после компиляции будет сотня ошибок.Андрей это исправлять не будет(не захочет возится)

Правильно будет либо через сылку(значок «цитировать»)
www.opentraders.ru/downloads/3602/


либо через значок «код»
//+------------------------------------------------------------------+
//|                                                       ZLines.mq4 |
//|                                              Copyright 2023, AM2 |
//|                                     https://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2023, AM2"
#property link      "https://www.forexsystems.biz"
#property version   "1.00"
#property strict

#property indicator_chart_window

input
int Depth = 12;
input
int Dev   = 5;
input
int Back  = 3;

input
bool Mail = 1;
input
bool Push = 1;
input
bool Alerts = 1;

datetime t
=0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
 
{
//--- indicator buffers mapping
   
Comment("");
//---
   
return(INIT_SUCCEEDED);
 
}
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double ZZPrice(int n=0)
 
{
   
double zz=0;
   
int k=0;

   
for(int i=0; i<1111; i++)
     
{
      zz
=iCustom(NULL,0,"ZigZag",Depth,Dev,Back,0,i);

     
if(zz!=0)
       
{
         k
++;
         
if(k>n)
           
return(zz);
       
}
     
}
   
return(0);
 
}
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int ZZBar(int n=0)
 
{
   
double zz=0;
   
int k=0;

   
for(int i=0; i<1111; i++)
     
{
      zz
=iCustom(NULL,0,"ZigZag",Depth,Dev,Back,0,i);

     
if(zz!=0)
       
{
         k
++;
         
if(k>n)
           
return(i);
       
}
     
}
   
return(0);
 
}
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutTrendLine(string name,datetime time1,double price1,datetime time2,double price2,color clr)
 
{
   
ObjectDelete(0,name);
   
ObjectCreate(0,name,OBJ_TREND,0,time1,price1,time2,price2);
//--- установим цвет линии
   
ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- установим стиль отображения линии
   
ObjectSetInteger(0,name,OBJPROP_STYLE,0);
//--- установим толщину линии
   
ObjectSetInteger(0,name,OBJPROP_WIDTH,1);
//--- включим (true) или отключим (false) режим продолжения отображения линии вправо
   
ObjectSetInteger(0,name,OBJPROP_RAY_RIGHT,1);
 
}
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutArrow(string name,int code,double p,datetime time,color clr)
 
{
   
ObjectDelete(0,name);
//--- создадим стрелку
   
ObjectCreate(0,name,OBJ_ARROW,0,time,p);
//--- установим код стрелки
   
ObjectSetInteger(0,name,OBJPROP_ARROWCODE,code);
//--- установим способ привязки
   
ObjectSetInteger(0,name,OBJPROP_ANCHOR,ANCHOR_CENTER);
//--- установим цвет стрелки
   
ObjectSetInteger(0,name,OBJPROP_COLOR,clr);
//--- установим размер стрелки
   
ObjectSetInteger(0,name,OBJPROP_WIDTH,2);
 
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
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[])
 
{
//---

   
if(ZZPrice(4)>ZZPrice(2) && ZZPrice(3)>ZZPrice(1))
     
{
     
PutTrendLine("14b",time[ZZBar(4)],ZZPrice(4),time[ZZBar(1)],ZZPrice(1),Blue);
     
PutTrendLine("13b",time[ZZBar(4)],ZZPrice(4),time[ZZBar(2)],ZZPrice(2),Blue);
     
PutTrendLine("24b",time[ZZBar(3)],ZZPrice(3),time[ZZBar(1)],ZZPrice(1),Blue);
     
}

   
if(ZZPrice(4)<ZZPrice(2) && ZZPrice(3)<ZZPrice(1))
     
{
     
PutTrendLine("14s",time[ZZBar(4)],ZZPrice(4),time[ZZBar(1)],ZZPrice(1),Gold);
     
PutTrendLine("13s",time[ZZBar(4)],ZZPrice(4),time[ZZBar(2)],ZZPrice(2),Gold);
     
PutTrendLine("24s",time[ZZBar(3)],ZZPrice(3),time[ZZBar(1)],ZZPrice(1),Gold);
     
}

   
double z13b=ObjectGetValueByShift("13b",1);
   
double z13s=ObjectGetValueByShift("13s",1);

   
if(t!=Time[0])
     
{
     
if(Close[1]>z13b && Open[1]<z13b)
       
{
         
if(Alerts)
           
Alert(_Symbol+" Buy!");
         
if(Push)
           
SendNotification(_Symbol+" Buy!");
         
if(Mail)
           
SendMail("Buy!",_Symbol+" Buy!");
           
         
PutArrow("Buy Arrow",233,Low[1],Time[1],Blue);
       
}

     
if(Close[1]<z13s && Open[1]>z13s)
       
{
         
if(Alerts)
           
Alert(_Symbol+" Sell!");
         
if(Push)
           
SendNotification(_Symbol+" Sell!");
         
if(Mail)
           
SendMail("Buy!",_Symbol+" Sell!");
           
         
PutArrow("Sell Arrow",234,High[1],Time[1],Red);
       
}
       
      t
=Time[0];
     
}

//--- return value of prev_calculated for next call
   
return(rates_total);
 
}
//+------------------------------------------------------------------+


иначе вследующий раз очень долго будете ждать ответа от программиста.
avatar

alex30774

  • 9 января 2024, 17:37
0
У меня индюк вообще стрелки не ставит.
avatar

alex30774

  • 9 января 2024, 15:37
0
Вот этот вот советник
zakaz.opentraders.ru/55030.html

сам строит линии так же как и ваш индикатор. И входы у него по вашему алгоритму, хотя автор просил немного другое но Андрей его не правильно понял (либо не стал сильно заморачиваться и написал упрощённый вариант), и как раз написал то, что вы просите.
Попробуйте может вас он устроит.
avatar

alex30774

  • 9 января 2024, 11:49
0


А голубые стрелочки с ораньжевыми хотя бы не перерисовываются?
Да и от подвальных индикаторов толку мало(фишер наложенный на индикатор рси)по своей сути синтетический график(сову не напишешь, потомучто рси никогда не уйдёт в отрицательную зону)
avatar

alex30774

  • 6 января 2024, 11:58
0
Если вы про меня, то мне просто интересно, что он будет делать, когда ошибётся с направлением сделки.Стопы то он на демо-счёте не ставит, а статистику красивую портить точно не будет.
avatar

alex30774

  • 26 декабря 2023, 18:05
0
1. Советник учитывает чужие ордера при установки трала (у примеру если в настройках трал с 3-го ордера, а в терминале уже открыты ордера другим советником, то этот советник устанавливает трал не с 3-го ордера, а с первого).


Можно сделать, чтобы советник только по своему меджику учитывал ордера.


Ещё раз прочитайте, что вы написали.
Вас программисты не поймут: два противоречих друг другу условия.
Вы уж определитесь советник должен учитывать только свои ордера или все.
avatar

alex30774

  • 19 декабря 2023, 18:08
0
Кажется заработал: оказывается нужно было терминал перезагрузить.
Завтра у остальных брокеров проверю.Может в понедельник новые косяки выявяться.
avatar

alex30774

  • 17 декабря 2023, 20:48
0
Изменил имя индикатора в соответствие с тем как прописано в индикаторе стал показывать единицы


но сделки всё равно не открывает.
avatar

alex30774

  • 17 декабря 2023, 20:32
0
Спасибо большое.Но не открывает сделки.Скорее всего от того что не видит количество баров(функция ZZBar не работает)

avatar

alex30774

  • 17 декабря 2023, 19:33
0
Спасибо за ссылку.Я это уже когда-то тестировал.
Это будет дальнейшее развитие(улучшение)системы.
Хочу попробовать систему избавить от преждевременных входов: когда эктремум зигзага сформируется, буду ждать сигнала от более медленой системы(стохастик+RVI)
avatar

alex30774

  • 16 декабря 2023, 19:32
0
Ст — значение кривой


это он наверное так МАшку называет, хотя я могу и ошибаться.Этих иностранцев фиг поймёшь.
avatar

alex30774

  • 15 декабря 2023, 15:52
0
Спасибо большое, буду ждать.
avatar

alex30774

  • 15 декабря 2023, 14:49
0
так вы две копии сделайте: одну с алертом, другую без
avatar

alex30774

  • 13 декабря 2023, 17:48
0
Я тоже не программист: просто красивыми словечками козыряю.
То есть знаю, но приблезительно(не уверен, что правильно)
avatar

alex30774

  • 13 декабря 2023, 12:48
0
Неотключаемые алерты для советника зло.(к ним особенно чувствительны мультивалютные советники)Либо попросите сделать алерт отключаемым, либо совсем его удалите(используйте индикатор без алерта).
Когда платному програмисту заказываешь мультивалютник на 30-50 символов и в Т.З. присутствует индюк с неотключаемым алертом, то многие программисты отказываются писать ссылаясь на то, что это очень трудоёмко и просят аналогичный индикатор, но без алерта.
avatar

alex30774

  • 13 декабря 2023, 12:05
0
А что рамер такой большой, столько не каждый мультивалютник весит.
avatar

alex30774

  • 12 декабря 2023, 18:28
0
На этом сайте, вы точно взломщика не найдёте.Зайдите на тематические сайты типа форексскладчик, форекскладчина и т.п.
Там взломщиков пасётся очень много, они только и ждут, что кто-то выложит какой-нибудь грааль.
И если вы представите доказательства, что советник или индикатор прибыльный, то вам его могут переписать в МТ5, причём может быть бесплатно.
Но могут и обмануть(там это в порядке вещей)
avatar

alex30774

  • 4 декабря 2023, 10:38
0
Прирост: 102.00%
Прибыль: 781.52 USD
Средства: 1 400.18 USD
Баланс: 1 781.52 USD
Нач. депозит: 1 000.00 USD
Снятия: 0.00 USD
Пополнения: 0.00 USD


Интересная у метоквотов математика:
Нач. депозит: 1 000.00 USD
Прирост: 102.00%

Баланс должен быть тогда 2002$, а у них 1 781.52 USD
avatar

alex30774

  • 3 декабря 2023, 11:44
Загрузка...