Алертер
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- nikita-trader
- Не в сети
- Новый участник
-
- Сообщений: 3
- Спасибо получено: 0
Пытаюсь написать скрипт для алерта, срабатывающего при превышении определенного объема текущей свечи.
Работает только в свече, которая является текущей при запуске, с остальными не работает, такое ощущение, что работает только в момент запуска, непрерывно не работает.
Вот сам скрипт:
[Большой объем в RTS]
CONDITION={XYZ,0,Volume}>100
DESCRIPTION=Объём в последней свече РТС больше 100
MESSAGE=Нет
SOUND=Alert.wav
Идентификатор на объеме поставил XYZ, объем в отдельном графике.
Прошу помощи!
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Подскажите пожалуйста где можно скачать устаревшую уже версию Алертера v1.8?
Скачал последнюю версию, необдуманно удалив старую, а оказалось она не работает. Не знаю в чем там причина, в quikе версии 7.12.1.10, либо еще в чем... но точно знаю что прошлая версия работала без проблем!
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Скрипт запускается и на это функционал заканчивается... никаких оповещений нет.
Конечно bot4sale.dll заменил.
P.S.
Если отключиться от интернета и запустить lua, Алертер оповещает что связь с брокером потеряна. Далее включаю интернет, но в окне скрипта продолжает отображаться отсутствие связи.
Если запустить lua при включеном интернете, и отключить как Алертер запуститься, никакой реакции нет.
Все другие оповещения не работают не при каких условиях.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- nikita-trader
- Не в сети
- Новый участник
-
- Сообщений: 3
- Спасибо получено: 0
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- nikita-trader
- Не в сети
- Новый участник
-
- Сообщений: 3
- Спасибо получено: 0
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Предположим есть два графика:
график 1 выражен не в цене, а в процентах изменения к цене закрытия вчерашнего дня (стандартными функциями в quik)
график 2 тоже самое, но, другой эмитент.
Хочу получить сигнал
1) когда параметр % изменения графика 2 больше на 0,50 % чем графика 1.
2) когда график 1 и график 2 пересекаются в нулевой точке, таким образом, они в балансе друг с другом, по
отношении к динамике роста/падения от цены закрытия вчерашнего дня
пример реализации сравнения таких графиков а окне quik:
Возможно ли выстроить несколько сигналов подряд?
тогда как будет выглядеть строка condition в плане синтаксиса ? Покажите любой пример
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Может, я неправильно понял вопрос и поэтому он мне кажется простым? Это два нещвюависмыз условия? Тогда как то так:
Дадим идентификаторы x1 и x2
1. x1 больше x2
CONDITTION = {x1} - {x2} > 0.5
2. Разница между x1 и x2 больше полпроцента
CONDITION = abs( {x1} - {x2}) > 0.5
Проверьте правильно ли я написал функцию abs
3. Про ноль.
CONDITION = abs({x1} -{x2}) < 0.01
Если же вы хотите отследить исполнение сначала одного условия, а потом другого (через произвольное время), то простыми средствами этого сделать нельзя и нужно написать небольшой плагин.
Алертер умеет обрабатывать плагины, только правила их написания довольно сложные и поэтому я их не публикую
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
просто идентификаторы отнимать. Получилось след. образом
CONDITION = {x1} - {x2} <= 0.10 and >= 0 or {x2} - {x1} <= 0.10 and >= 0 //спред сузился
вроде не ругается, все работает
А если я хочу добавить еще один сигнал ? Как прописать следующий condition чтобы не ругался синтаксис?
Сейчас ошибка:
"повторение параметра CONDITION в секции"
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Мне сегодня алертер помог цену отслеживать, но очень много писем пришло когда я уже в позиции был. И это было неактуально. Я ждал уже другой аллерт, на закрытие
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Сколько раз сработает условие, столько сигналов вы и получите.
Вопрос в правильности написания условий.
Например если вы напишете условие типа цена больше 100 и сделки будут идти по ценам
99.9, 100, 100.1, 100, 100.1, 100, 100.1 - то вы получите здесь три сообщения.
При достижении 100.1 условие выполняется, вы получаете сообщение. При откате до 100 условие не выполняется. Далее опять 100.1 -усдовие выполняется, получаете сообщение и так далее по кругу.
На круглых уровнях такие колебания могут происходить тысячами и даже десятками тысяч. И ровно столько писем алертер вам будет пытаться отправлять. Он глупый и не может догадаться, хотели вы этого или не хотели.
Вывод. Пишите условия более корректно.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Самое простое, это вызвать по сигналу командный файл windows примерно такого содержания:
Echo sell > file.ext
В результате в файл file.ext будет выведена строчка "sell". Ee можно обрабатывать любой внешней программой.
Такде можно вызывать любую другую программу, которую вы напишете, с нужными вам параметрами и она может делать то, что вам требуется.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
"На самом деле внутри условия condition можно написать целую программу на языке Lua. Она может состоять из большого количества функций и иметь весь функционал, предоставляемый языком программирования. Переменные тоже можно использовать."
Не могли бы Вы написать небольшой пример (с переменной, вызовом внешней программы), а то я не могу понять, как это сделать. Выражение CONTITION должно иметь логический результат, так где писать и как?
Думаю это многим бы помогло расширить функционал Алертера.
P.S. у меня полная версия
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Плагин - это функция, написанная на языке lua, которая написана с использованием определенных соглашений и ограничений.
Ее можно включить в расчет условия condition.
Я как-то попробовал изложить на бумаге правила написания этих плагинов. Получилось нечто зубодробительные и непонятное. Если бы я не знал как устроен алертер, я бы тоже ничего в этой писанине не понял.
Поэтому особого смысла приводить правила написания плагинов нет.
Но вы можете попробовать написать несложные условия condition с использованием стандартной lua функции loadstring. Впрочем, это тоже требует практики программирования на языке lua.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
Condition = loadstring("return 5>3")()
Параметром loadstring должен быть произвольный блок операторов lua, возвращающий boolean. Можно использовать функции алертера.
Но будьте аккуратны. Можно не только поломать скрипт, но и устроить маленькую атомную войну.. ))
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
