Цитата |
---|
Andrei2016 написал: Зачем вообще заморачиваться... |
Заморачиваться с запуском одного скрипта из другого, наверное, действительно не стоит.
Вопрос был для решения другой задачи: как позволить скриптам обмениваться информацией. Хотя и здесь можно так решить: все скрипты свалить в одну кучу (в один скрипт), решающий в параллельных потоках различные задачи с разными инструментами. Либо пусть каждый из скриптов занимается одними и теми же вычислениями (общими для них), расходуя впустую ресурсы компьютера.
Но вот такую задачу, к сожалению, разработчики QUIK, похоже, сознательно не хотят позволить решать обычными средствами QLua: Нужно построить индикатор, учитывающий события, возможно, происходившие на меньшем таймфрейме, чем таймфрейм окна диаграммы, либо нужно построить индикатор на фиксированном таймфрейме, не зависящем от случайного изменения пользователем таймфрейма окна диаграммы.
Задача решалась бы элементарно, если бы для скрипта индикатора было бы доступно получение альтернативного источника данных через функцию CreateDataSource, пускай даже в усеченном варианте, т. е. без возможности установки SetUpdateCallback.
Единственный видимый мною выход - это запустить обычный скрипт, который закажет данные в необходимом таймфрейме через CreateDataSource и выложит их в "открытый доступ" для скриптов индикаторов.
Как это организовать? Один из вариантов - через MemoryMappedFile.