RekkeR: Есть несколько горизонтальных линий, нужно определить кво пунктов между ними в разных сочетаниях, в принципе на данном этапе меня вполне устроит определение между двумя линиями, остальное сделаю руками. Может есть готовый скрипт или индикатор такой? Спасибо за отклик.
Профессионально не программирую,- потому - был бы рад помочь, но ...
Есть несколько горизонтальных линий, нужно определить кво пунктов между ними в разных сочетаниях, в принципе на данном этапе меня вполне устроит определение между двумя линиями, остальное сделаю руками. Может есть готовый скрипт или индикатор такой? Спасибо за отклик.
Я дам Вам уже готовый код, раз он так Вам нужен. Тут нет ни чего сложного.
//+------------------------------------------------------------------+//| script program start function |//+------------------------------------------------------------------+int start()
{
/*
Скрипт
========== Lines_RASST ========
Является дополнением к скрипту Lines_Create. (Скрипт Lines_Create создаёт на графике 2 горизонтальные линии с именами UP_LEVEL и DOWN_LEVEL)
Скрипт Lines_RASST выводит на экран сообщение о том, сколько пунктов расстояние между двумя горизонтальными линиями
у которых миена UP_LEVEL и DOWN_LEVEL.
В силу того, что скрипт Lines_RASST имеет задержку в коде, надо не просто кинуть его на график, или не просто сделать
по скрипту двойной клик, надо ещё сразу сделать дополнительный одинарный клик левой кнопкой мыши по окну графика.
Только в этом случае надпись, говорящая о расстоянии появится и через 5 секунд исчезнет сама.
Если скрипт Lines_RASST вызван, а дополнительный клик по окну не сделан, то по прошествии 5 секунд скрипт выгрузится из оперативной
памяти, и Вы ни чего на экране не увидите, ни какой надписи (почему так сделан терминал я не знаю).
*/bool fm;
// --------------- Значения цены на горизонтальных линиях ---------------------------------double UpLevelPrice=ObjectGet("UP_LEVEL",OBJPROP_PRICE1);
double DownLevelPrice=ObjectGet("DOWN_LEVEL",OBJPROP_PRICE1);
// ---------------------------------------------------------------------------------------- //--------- калькулятор расстояний между этими линиями ---------------int Rasst=(UpLevelPrice-DownLevelPrice)/Point;
fm=ObjectCreate("DIAPAZON",OBJ_LABEL,0,0,0);
if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
fm=ObjectSetText("DIAPAZON","Канал = "+Rasst+" pt.",24,"Verdana",Blue);
if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
fm=ObjectSet("DIAPAZON",OBJPROP_CORNER,0);
if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
fm=ObjectSet("DIAPAZON",OBJPROP_XDISTANCE,350);
if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
fm=ObjectSet("DIAPAZON",OBJPROP_YDISTANCE,315);
if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
// ------------------------------------------------------------------Sleep(5000);
//-------- удаляем надпись с экрана -----------------------------
fm=ObjectDelete("DIAPAZON");
if(fm==0 || fm==-1){// тут можно вывести сообщение об ошибке}
}
Неправильный он потому, что в нём строка double MyKoren(double MyValue=36){ инициализирует переменную MyValue значением = 36. Это лишено всякого смысла, так как мы в подпрограмму передаём значение = значению переменной DlyaKornya.
Это умолчание... Если функция вызвана так: double rex=(MyKoren()+1)*100+(MyKoren()+1)*10+MyKoren()+1;
Это умолчание... Если функция вызвана так: double rex=(MyKoren()+1)*100+(MyKoren()+1)*10+MyKoren()+1;
ответ понятен?
Повторюсь:
... Инициализация переменной в ней значением = 36 видать сработает только в том случае, если вызов функции произойдёт без указания параметров.
... Всё равно лучше не использовать конструкции типа double MyKoren(double MyValue=36){, а писать как оно и положено - double MyKoren(double MyValue){, иначе потом будешь недоумевать, почему подпрограмма работает не так как нужно.
Поймите, что при задействовании конструкции типа double MyKoren(double MyValue=36){ с последующим вызовом вроде Вашего double rex=(MyKoren()+1)... потрерять контроль - раз плюнуть. Особенно новичку.
... Инициализация переменной в ней значением = 36 видать сработает только в том случае, если вызов функции произойдёт без указания параметров.
... Всё равно лучше не использовать конструкции типа double MyKoren(double MyValue=36){, а писать как оно и положено - double MyKoren(double MyValue){, иначе потом будешь недоумевать, почему подпрограмма работает не так как нужно.
Поймите, что при задействовании конструкции типа double MyKoren(double MyValue=36){ с последующим вызовом вроде Вашего double rex=(MyKoren()+1)... потрерять контроль - раз плюнуть. Особенно новичку.
С чего вы взяли что я что-то украл? Этот индикатор в свободном доступе в интернете в формате mql. При чём здесь, что нельзя выкладывать декомпелированные индюки? Я лично ничего не декомпилировал. Нашёл, понравилось, попросил сделать алерт. В чём проблема?
Доброе время суток... не можете подсказать как включить советника например Ilan_19 выложенного здесь ... работаю на Альпари пятизнак... установил включаю и не работает...
Доброе время суток... не можете подсказать как включить советника например Ilan_19 выложенного здесь ... работаю на Альпари пятизнак... установил включаю и не работает...
Не работает - понятие растяжимое... Что именно не работает, что происходит и т.д. и т.п.
Есть несколько горизонтальных линий, нужно определить кво пунктов между ними в разных сочетаниях, в принципе на данном этапе меня вполне устроит определение между двумя линиями, остальное сделаю руками. Может есть готовый скрипт или индикатор такой? Спасибо за отклик.
Профессионально не программирую,- потому - был бы рад помочь, но ...
Есть несколько горизонтальных линий, нужно определить кво пунктов между ними в разных сочетаниях, в принципе на данном этапе меня вполне устроит определение между двумя линиями, остальное сделаю руками. Может есть готовый скрипт или индикатор такой? Спасибо за отклик.
Я дам Вам уже готовый код, раз он так Вам нужен. Тут нет ни чего сложного.
Неправильный он потому, что в нём строка double MyKoren(double MyValue=36){ инициализирует переменную MyValue значением = 36. Это лишено всякого смысла, так как мы в подпрограмму передаём значение = значению переменной DlyaKornya.
Это умолчание... Если функция вызвана так: double rex=(MyKoren()+1)*100+(MyKoren()+1)*10+MyKoren()+1;
ответ понятен?
Это умолчание... Если функция вызвана так: double rex=(MyKoren()+1)*100+(MyKoren()+1)*10+MyKoren()+1;
ответ понятен?
Повторюсь:
... Инициализация переменной в ней значением = 36 видать сработает только в том случае, если вызов функции произойдёт без указания параметров.
... Всё равно лучше не использовать конструкции типа double MyKoren(double MyValue=36){, а писать как оно и положено - double MyKoren(double MyValue){, иначе потом будешь недоумевать, почему подпрограмма работает не так как нужно.
Поймите, что при задействовании конструкции типа double MyKoren(double MyValue=36){ с последующим вызовом вроде Вашего double rex=(MyKoren()+1)... потрерять контроль - раз плюнуть. Особенно новичку.
Повторюсь:
... Инициализация переменной в ней значением = 36 видать сработает только в том случае, если вызов функции произойдёт без указания параметров.
... Всё равно лучше не использовать конструкции типа double MyKoren(double MyValue=36){, а писать как оно и положено - double MyKoren(double MyValue){, иначе потом будешь недоумевать, почему подпрограмма работает не так как нужно.
Поймите, что при задействовании конструкции типа double MyKoren(double MyValue=36){ с последующим вызовом вроде Вашего double rex=(MyKoren()+1)... потрерять контроль - раз плюнуть. Особенно новичку.
)))
зато номер странички запомнится.
Или ключ сгенерируется...
;)
Это другая ветка - я заплутал. и прошу простить.
Почту кружит. (с) АС Пушкин
Нужно не выкладывать краденное.
Доброе время суток... не можете подсказать как включить советника например Ilan_19 выложенного здесь ... работаю на Альпари пятизнак... установил включаю и не работает...
Доброе время суток... не можете подсказать как включить советника например Ilan_19 выложенного здесь ... работаю на Альпари пятизнак... установил включаю и не работает...
Не работает - понятие растяжимое... Что именно не работает, что происходит и т.д. и т.п.
Pilligrim:
не торгует...