Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?
Сентября 13, 2024, 10:08:19 pm
Начало Помощь Поиск Войти Регистрация
Новости:

Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: Сигнал по одному инструменту, а сделка по другому « предыдущая тема следующая тема »
Страниц: [1] Печать
Автор Тема: Сигнал по одному инструменту, а сделка по другому  (Прочитано 3870 раз)
buv87
Newbie
*
Сообщений: 12


Просмотр профиля Email
« : Апреля 06, 2015, 11:12:39 pm »

Добрый вечер! подскажите пожалуйста, как можно организовать такую идею:
Есть инструмент Сбер акции и Сбер фьюч. Отслеживаем пересечение индикаторов на акциях. если произошло пересечение, то совершается  сделка  по фьючерсу
Записан
buv87
Newbie
*
Сообщений: 12


Просмотр профиля Email
« Ответ #1 : Апреля 07, 2015, 02:18:56 pm »

Попробовал сделать через окружение onEnvEvent(string) и postEnvEvent(string), вроде работает
Записан
jeekk
Newbie
*
Сообщений: 5


Просмотр профиля Email
« Ответ #2 : Ноября 07, 2017, 11:54:10 pm »

Как будет на практическом примере?


◾ onEnvEvent(event) - событие ATF-окружения

◾ postEnvEvent(string) - Вызвать событие ATF-окружение. (ver. 1.12)

◾ setEnvVariable(name, value) - выставить переменную ATF-окружения c именем name в значение value   
   (value не может быть объектом). (ver. 1.12)


Пока только эту информацию нащел. Будьте добры, покажите на примере.
« Последнее редактирование: Ноября 08, 2017, 12:11:10 am от jeekk » Записан
jeekk
Newbie
*
Сообщений: 5


Просмотр профиля Email
« Ответ #3 : Ноября 08, 2017, 01:28:07 am »

Еще инфу нашел.

Посмотрите здесь: http://www.transaq.ru/docs/atf/functions  следующие функции: onEnvEvent, setEnvVariable, getEnvVariable, postEnvEvent. Это собственно все связано с этим окном.

Руководство как пользоваться я пишу в данный момент. Пока если в двух словах, то идея в том, что теперь в ATF есть "совсем глобальные" переменные, которые называются окружением. Вы можете устанавливать их из любого скрипта и читать из любого скрипта, а так же генерировать какие-то события, которые будут восприняты всеми работающими скриптами.

Это позволяет решать на простом уровне вопрос обмена данными между разными скриптами. Например, вы хотите, чтобы если RTSI пересечет свою скользящую среднюю вниз, выключить всех роботов, которые работают. Тогда вы можете на пересечение линии вызвать в одном скрипте postEnvEvent("shutdownall"), и в каждом скрипте сработает функция onEnvEvent(var env), где env будет содержать строку "shutdownall" - по ней вы можете определить что вам стоит прекратить выполнять торговые операции.

Ну или например вы хотите во всех скриптахзнать текущее значение индекса ММВБ. Тогда на график индекса ММВБ вы можете положить такой индикатор:


Code: [Select]
function calc()
{
    setEnvVariable("micex", close)
}


А в других скриптах вы сможете получать актуальное значение индекса ММВБ функцией getEnvVariable("micex").
« Последнее редактирование: Ноября 08, 2017, 02:05:48 pm от jeekk » Записан
Страниц: [1] Печать 
Transaq  |  СБО "Transaq"  |  Подсистема ATF  |  Topic: Сигнал по одному инструменту, а сделка по другому « предыдущая тема следующая тема »
Перейти в:  


Войти

Powered by MySQL Powered by PHP Powered by SMF 2.0.10 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!