База знаний

Шаг 1 – попробуйте найти ответ:

База знаний: > Визуальный редактор
Перенос скриптов и пользовательских индикаторов из 1.2 в версию 2.0 *
Автор Alexey TSLab, Изменено Alexey TSLab на 08 April 2019 16:00

Скрипты, написанные в визуальном редакторе переносятся так:
1. В версии 1.2 из управления скриптами сохранить в файл.
2. В версии 2.0 из управления скриптами загрузить из файла.
 Если в скрипте не использованы сторонние индикаторы, скрипт загрузится.
 Если использованы сторонние индикаторы(не идущие в поставке программы):
 в версии 2.0 АПИ был изменен, и конечно индикаторы нужно пересобрать(скомпилировать скрипт/индикатор) под версию 2.0
 При компиляции использовать DLL программы от версии 2.0
 
  Информация: для большинства скриптов достаточно пересобрать проект с dll из программы 2.0.
Для какой-то части скриптов и/или индикаторов нужны изменения.
Например, переименование типов переменных из IList в IReadOnlyList
Также переделена работа с уведомлениями и цветами.
1.Bar уже нет. Где возможно, надо работать с интерфейсом IBar, либо классы BidAskBar DataBar
2. ctx.Log(msg, Color) нет. Есть
void Log(string text, MessageType type = MessageType.Info, bool toMessageWindow = false, IDictionary<string, object> context = null);
3.ISecurity.OpenPrices ISecurity.ClosePrices не использовать
вместо этого
var bars = source.Bars;
bars[i].Open bars[i].Close

При использовании индикаторов без компиляции под версию 2.0 могут возникать следующие сообщения об ошибке:
System.MissingMethodException: Метод не найден: "Int32 TsLab.Script ...
Элемент '...' содержит ошибку: Не найден обработчик класса ...
Возможно dll с обработчиком отсутствует, либо не смогла загрузиться.

Если версии одинаковы на обоих компьютерах:
Из 1.2 в 1.2 . Управление скриптами - Создать архив скриптов.
Далее, во второй программе(другом компьютере) Управление скриптами - Загрузить из файла, в открывшемся окошке windows выбрать тип файла.
То же самое и из версии 2.0 в версию 2.0(на другом компьютере) , через создание архива скриптов.

(15 голос(а))
Эта статья полезна
Эта статья бесполезна