Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 790

 
Artyom Trishkin:

А куда ставите стрелку?

На минимум текущего бара минус 10 пунктов. К чему ведёте?

 
lil_lil:

На минимум текущего бара минус 10 пунктов. К чему ведёте?

Мало совсем времени разбираться. Выведите в комментарий на графике значения всех переменных. И коли вы рассчитываете всё на текущем баре, то вынесите все эти расчёты из цикла.

 

Всем здравствуйте :)
Может, у кого завалялась функция динамичного лота в зависимости от стоп-лосса, но чтобы она работала только на увеличение.

При уменьшение баланса лот остается последним, т.е. работает как клапан одностороннего действия.

У меня есть идея для этой задачки, но она не такая изящная.

 

Здравствуйте, подскажите, пожалуйста. Мне нужно на графике одной пары получить котировки другой и чтобы они обновлялись с каждым тиком. Как это сделать?

extern string y1 = "EURUSD"; //Наименование валютной пары1
extern string y2 = "GBPUSD"; //Наименование валютной пары2
double vbid1    = MarketInfo(y1,MODE_BID); 
double vbid2    = MarketInfo(y2,MODE_BID); 
double vask1    = MarketInfo(y1,MODE_ASK); 
double vask2    = MarketInfo(y2,MODE_ASK);

void OnTick()
  {
   Comment("\n",
   "Валютная пара1 = ",y1,"\n","\n", 
   "Последняя цена предложения BID = ",vbid1,"\n",
   "Последняя цена продажи ASK= ",vask1,"\n", 
     "\n","\n","\n"
   "Валютная пара2 = ",y2,"\n","\n",
   "Последняя цена предложения BID = ",vbid2,"\n",
   "Последняя цена продажи ASK = ",vask2,"\n" 
   
 
  );
  }   
 
nelenaby:

Здравствуйте, подскажите, пожалуйста. Мне нужно на графике одной пары получить котировки другой и чтобы они обновлялись с каждым тиком. Как это сделать?

Строчки 

double vbid1    = MarketInfo(y1,MODE_BID); 
double vbid2    = MarketInfo(y2,MODE_BID); 
double vask1    = MarketInfo(y1,MODE_ASK); 
double vask2    = MarketInfo(y2,MODE_ASK);

перенеси в тело функции    OnTick()

выше   Comment()  

 
Люди, такое дело, написал скрипт, в первой строке OnStart() написал "Alert("Started script"), в итоге ничего не происходит, в журнале вижу только 2 строки: "loaded successfully" и "removed". GetLastError() пишет 0. Помогите)
 
ukrop1203:
Люди, такое дело, написал скрипт, в первой строке OnStart() написал "Alert("Started script"), в итоге ничего не происходит, в журнале вижу только 2 строки: "loaded successfully" и "removed". GetLastError() пишет 0. Помогите)

Если скрипт написал, так и покажите его. Вставьте код в своё сообщение.

 
Alexey Viktorov:

Если скрипт написал, так и покажите его. Вставьте код в своё сообщение.

Не знаю как это должно помочь, все кроме содержимого OnStart() я копировал и запускал с одним только алертом, все работает. По логике из-за содержимого OnStart() этот же Onstart() не хочет запускаться. Я в недоумении.

#property strict

datetime someDate = 1552867200; //18.03.2019
int shift2013 = 1856 + MathFloor((TimeLocal() - someDate) / 86400); //shift to 02.01.2013
double ATR;
color colors[12] = {clrBlack, clrDarkGreen, clrDarkSlateGray, clrOlive, 
                  clrGreen, clrTeal, clrNavy, clrPurple, clrMaroon, 
                  clrSaddleBrown, clrSeaGreen, clrDarkGoldenrod};
long chartID = ChartID();
extern string templ = "GRAY.tpl";

double longLevel;
double shortLevel;
double lastCheckedLongLevel;  //последний лонг уровень, на котором делали скрины
double lastCheckedShortLevel;

double channelHigh;
double channelLow;

 
ukrop1203:

Не знаю как это должно помочь, все кроме содержимого OnStart() я копировал и запускал с одним только алертом, все работает. По логике из-за содержимого OnStart() этот же Onstart() не хочет запускаться. Я в недоумении.


После алерта поставьте Sleep(100) хотя-бы 100. Вполне вероятно, что алерт исполниться не успевает, а тут применение шаблона в котором нет того самого скрипта и соответственно алерта.
 
Igor Makanu:

в  журнале экспертов нет сообщений об Алерте? 

Нет, только "loaded successfully" и "removed".