Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1107
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
в OnInit нельзя выполнять что то долго - терминал может выгрузить код
в индикаторе не должен слиип работать
даaaaa, туплю... может, в таком случае, вместо бесконечного цикла в OnInit сделать return из OnCalculate с тем же условием? - пока не залогинился - ничего не считать. там же должно быть вполне определенное число при "нелогине", или -1, или 0, или EMPTY_VALUE
Приветствую трейдеров и программистов!
Подскажите, пожалуйста, существует ли возможность использовать нестандартный метод расчета периода для MA (Moving Average) ? Я подразумеваю, что положение MA на текущем (нулевом) баре будет определяться не 20 (к примеру) последними барами, а из последних 100 каждым 5м, или просто указать номера баров в истории, начиная от текущего. И, если есть такая возможность, то можно ли функцию задать непосредственно в коде индикатора?
Благодарю за информацию.
Здравствуйте. Как вывести символ треугольник вниз и вверх?
есть код
bool OutText(const string name="Label",
const string text="Label", // текст
const int x=0, // координата по оси X
const int y=0, // координата по оси Y
const color clr=clrYellow, // цвет
const ENUM_ANCHOR_POINT anchor=ANCHOR_LEFT_UPPER, // способ привязки
const ENUM_BASE_CORNER corner=CORNER_LEFT_UPPER, // угол графика для привязки
const int font_size=12, // размер шрифта
const string font="Arial", // шрифт
const double angle=0.0, // наклон текста
const bool back=false, // на заднем плане
const bool selection=false, // выделить для перемещений
const bool hidden=true, // скрыт в списке объектов
const long z_order=0,
const int sub_window=0, // номер подокна
const long chart_ID=0 // ID графика
) // приоритет на нажатие мышью
{
//--- сбросим значение ошибки
ResetLastError();
//--- создадим текстовую метку
if(ObjectFind(chart_ID,name)==-1)
{
if(!ObjectCreate(chart_ID,name,OBJ_LABEL,sub_window,0,0))
{
Print(__FUNCTION__, ": не удалось создать текстовую метку! Код ошибки = ",GetLastError());
// return(false);
}
}
//--- установим координаты метки
ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x);
ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y);
//--- установим угол графика, относительно которого будут определяться координаты точки
ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner);
//--- установим текст
ObjectSetString(chart_ID,name,OBJPROP_TEXT,text);
//--- установим шрифт текста
ObjectSetString(chart_ID,name,OBJPROP_FONT,font);
//--- установим размер шрифта
ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size);
//--- установим угол наклона текста
ObjectSetDouble(chart_ID,name,OBJPROP_ANGLE,angle);
//--- установим способ привязки
ObjectSetInteger(chart_ID,name,OBJPROP_ANCHOR,anchor);
//--- установим цвет
ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);
//--- отобразим на переднем (false) или заднем (true) плане
ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back);
//--- включим (true) или отключим (false) режим перемещения метки мышью
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection);
ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);
//--- скроем (true) или отобразим (false) имя графического объекта в списке объектов
ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);
//--- установим приоритет на получение события нажатия мыши на графике
ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
//--- успешное выполнение
return(true);
}
Как вывести треугольник символ вверх?
Что нужно написать
OutText("LabelBuy1", ">", 100, 20, clrWhite, ANCHOR_UPPER,CORNER_LEFT_UPPER,14,"Arial");
Чтобы получился треугольник вверх?
Ранее я задавал вопрос как со стороны библиотеки имитировать функцию Print() для проверки данных поступающих в функции библиотеки и для поиска ошибок, мне дали совет использовать ресурсы с++: т.е. производить запись информации в файл со стороны dll библиотеки. В общем в библиотеке не получается создать файл для записи туда информации, файл не создаётся ни в каталоге проекта, ни папке с роботом, пробовал указывать умолчательный путь ничего не помогает, вывод информации через cout тоже не работает, но наверное и не сможет потому что это не совсем консольное приложение. Кто что может посоветовать?
Каким образом вместо стандартной картинки в описании ...
... можно поставить свою?
Каким образом вместо стандартной картинки в описании ...
... можно поставить свою?
#property icon
Как всё просто... Спасибо!
Здравствуйте!
Подскажите, будьте добры, как реализовать обнаружение на графике графических обьектов, нанесенных вручную ( горизонтальная или трендовая линия, например), затем - получение их свойств (уровень цены в нужное время).
Здравствуйте!
Подскажите, будьте добры, как реализовать обнаружение на графике графических обьектов, нанесенных вручную ( горизонтальная или трендовая линия, например), затем - получение их свойств (уровень цены в нужное время).
Здравствуйте!
Подскажите, будьте добры, как реализовать обнаружение на графике графических обьектов, нанесенных вручную ( горизонтальная или трендовая линия, например), затем - получение их свойств (уровень цены в нужное время).
у них префикс стандартизован, например: Trеndline число. Можно искать так: в цикле if(StringFind(ObjectName(0,i),"Trendline")==0) для старых или для новых if(StringFind(sparam,"Trendline")==0))