Не совсем, хотя это пригодится для теста. Хочу чтобы индикатор прикреплялся к онлайн графику после прикрепления к нему советника. Возможно?
Не пробовал. Если теоретически, то вряд-ли получится. Может по этому и не экспериментировал пока. Получится так, что при каждой загрузке советника, применяется шаблон на котором вновь запускается советник. И всё повторяется, применяется шаблон, запускается новая копия советника и т.д.
Может лучше, если уж хочется так, что зубы сводит, сделать скрипт который будет применять шаблон с советником и индикаторами.
Спасибо всем за участие. Попробую в ините вызвать ChartApplyTemplate() в глобальной терминала присвою значение переменной, но перед вызовом ChartApplyTemplate() проверю её значение.
Здравствуйте! Помогите, пожалуйста, решить проблемку, у меня не получается. Необходимо в коде советника, работающего на активном графике символа 1, прописать рисование горизонтальных линий в другом, НЕ активном графике символа 2. Имеется в виду, что график символа 2 открыт на экране. Например, для второго символа SUI30 я сделал так:
novichok2018: Здравствуйте! Помогите, пожалуйста, решить проблемку, у меня не получается. Необходимо в коде советника, работающего на активном графике символа 1, прописать рисование горизонтальных линий в другом, НЕ активном графике символа 2. Имеется в виду, что график символа 2 открыт на экране. Например, для второго символа SUI30 я сделал так: но метаэдитор выдает сообщение implicit conversion from 'string' to 'number'. Что у меня неправильно, и как решить? Спасибо.
Надо использовать другую перегрузку функции
boolObjectCreate(
long chart_id, // идентификатор графика string object_name, // имя объекта ENUM_OBJECT object_type, // тип объекта int sub_window, // индекс окна datetime time1, // время первой точки привязки double price1, // цена первой точки привязки
...
datetime timeN=0, // время N-точки привязки double priceN=0// цена N-точки привязки
);
А этот идентификатор графика надо найти перебором графиков от ChartFirst();
longChartNext(
long chart_id // идентификатор графика
);
Пример из документации
//--- переменные для идентификаторов графиков long currChart,prevChart=ChartFirst();
int i=0,limit=100;
Print("ChartFirst = ",ChartSymbol(prevChart)," ID = ",prevChart);
while(i<limit)// у нас наверняка не больше 100 открытых графиков
{
currChart=ChartNext(prevChart); // на основании предыдущего получим новый график if(currChart<0) break; // достигли конца списка графиков Print(i,ChartSymbol(currChart)," ID =",currChart);
prevChart=currChart;// запомним идентификатор текущего графика для ChartNext()
i++;// не забудем увеличить счетчик
}
А этот идентификатор графика надо найти перебором графиков от ChartFirst();
Пример из документации
К моему сожалению, попытки разобраться ни к чему не привели. Просто к уже имеющимся сообщениям добавились ошибки, связанные с применением ф-и ChartNext(). Не понимаю сути.
К моему сожалению, попытки разобраться ни к чему не привели. Просто к уже имеющимся сообщениям добавились ошибки, связанные с применением ф-и ChartNext(). Не понимаю сути.
Ну, для облегчения задачи можно использовать постоянный ID графика. Напишите скрипт
Print(ChartID());
Запустите его на график на котором надо рисовать эти линии. Затем впишите это значение в функцию в качестве идентификатора графика.
А по хорошему, пример из документации, это не готовая функция, типа бери и пользуйся. Надо в цикле перебора делать проверку на символ и период. Если найден нужный, то выход из цикла и применение полученного идентификатора.
в подключаемом инклюднике OPENCL cl_ есть константа и она равна #define CL_DBL_MAX 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.0 перепроверив степень двойки в 1024 получил. 2^1024 = 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216 И тут же ниже число Пи
Ну, для облегчения задачи можно использовать постоянный ID графика. Напишите скрипт
Запустите его на график на котором надо рисовать эти линии. Затем впишите это значение в функцию в качестве идентификатора графика.
А по хорошему, пример из документации, это не готовая функция, типа бери и пользуйся. Надо в цикле перебора делать проверку на символ и период. Если найден нужный, то выход из цикла и применение полученного идентификатора.
Спасибо. Со скриптом все получилось, линии рисует.
Не совсем, хотя это пригодится для теста. Хочу чтобы индикатор прикреплялся к онлайн графику после прикрепления к нему советника. Возможно?
Не пробовал. Если теоретически, то вряд-ли получится. Может по этому и не экспериментировал пока. Получится так, что при каждой загрузке советника, применяется шаблон на котором вновь запускается советник. И всё повторяется, применяется шаблон, запускается новая копия советника и т.д.
Может лучше, если уж хочется так, что зубы сводит, сделать скрипт который будет применять шаблон с советником и индикаторами.
Привет,
Как я могу создать бары, используя 30 тиков каждого PERIOD_M1?
Я хочу создать нового персонажа для моего анализа.
Здравствуйте! Помогите, пожалуйста, решить проблемку, у меня не получается. Необходимо в коде советника, работающего на активном графике символа 1, прописать рисование горизонтальных линий в другом, НЕ активном графике символа 2. Имеется в виду, что график символа 2 открыт на экране. Например, для второго символа SUI30 я сделал так: но метаэдитор выдает сообщение implicit conversion from 'string' to 'number'. Что у меня неправильно, и как решить? Спасибо.
Надо использовать другую перегрузку функции
А этот идентификатор графика надо найти перебором графиков от ChartFirst();
Пример из документации
Надо использовать другую перегрузку функции
Спасибо, пытаюсь разобраться.
Надо использовать другую перегрузку функции
А этот идентификатор графика надо найти перебором графиков от ChartFirst();
Пример из документации
К моему сожалению, попытки разобраться ни к чему не привели. Просто к уже имеющимся сообщениям добавились ошибки, связанные с применением ф-и ChartNext(). Не понимаю сути.
К моему сожалению, попытки разобраться ни к чему не привели. Просто к уже имеющимся сообщениям добавились ошибки, связанные с применением ф-и ChartNext(). Не понимаю сути.
Ну, для облегчения задачи можно использовать постоянный ID графика. Напишите скрипт
Запустите его на график на котором надо рисовать эти линии. Затем впишите это значение в функцию в качестве идентификатора графика.
А по хорошему, пример из документации, это не готовая функция, типа бери и пользуйся. Надо в цикле перебора делать проверку на символ и период. Если найден нужный, то выход из цикла и применение полученного идентификатора.
в подключаемом инклюднике OPENCL cl_ есть константа и она равна #define CL_DBL_MAX 179769313486231570814527423731704356798070567525844996598917476803157260780028538760589558632766878171540458953514382464234321326889464182768467546703537516986049910576551282076245490090389328944075868508455133942304583236903222948165808559332123348274797826204144723168738177180919299881250404026184124858368.0 перепроверив степень двойки в 1024 получил. 2^1024 = 179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216 И тут же ниже число Пи
после
#define CL_M_PI 3.141592653589793115998
3.141592653589793238462643383279502884197169
обьясните почему так ????
Ну, для облегчения задачи можно использовать постоянный ID графика. Напишите скрипт
Запустите его на график на котором надо рисовать эти линии. Затем впишите это значение в функцию в качестве идентификатора графика.
А по хорошему, пример из документации, это не готовая функция, типа бери и пользуйся. Надо в цикле перебора делать проверку на символ и период. Если найден нужный, то выход из цикла и применение полученного идентификатора.
Спасибо. Со скриптом все получилось, линии рисует.