Логотип Парус Инвестора
Парусник
Цена деления цифровой шкалы
Системы и стратегии

Учебник по языку программирования Easy Language

ПРИЛОЖЕНИЕ 1. Синтаксические ошибки EasyLanguage

Синтаксические ошибки продуцируются проверке инструкции EasyLanguage, если она не понята или ожидается PowerEditor. Далее следует список всех синтаксических ошибок и их описания, перечисленных в соответствие с номером ошибки. Каждый статья включает описание ошибки, вероятные причины ошибки и примеры правильного и неправильного синтаксиса для инструкции или команды.


308 "A data alias (POSITION) was expected here."
"Псевдоним данных (POSITION) ожидается здесь" При работе с методами анализа OptionStation и обращении к небольшому количеству данных или выражению, относящегося к позиции, необходимо определить, что эти данные относятся к позиции. Чтобы исправить данную ошибку, прибавьте спецификатор of Position к используемому выражению.


309 "This word not allowed in a Search Strategy."
"Это слово не позволено в Поиске стратегии" Слово, подсвеченное PowerEditor, не позволяется в Поиске стратегии. Слова, подобные Plot1, Buy, Sell и т.п., не разрешены в Поиске Стратегий.


310 "This word not allowed in a Pricing Model."
"Это слово не позволено в Ценовой Модели" Слово, подсвеченное PowerEditor, не позволяется в Ценовой Модели. Слова, подобные Plot1, Buy, Sell и т.п., не разрешены в Ценовых Моделях.


311 "The words 'Future' or 'Option' may not be numbered in a Pricing Model."
"Слово 'Future' или 'Option' не может употребляться в Ценовой Модели" Слова Future(n) и Option(n) не могут использоваться в Ценовой Модели. Эти слова могут использоваться во всех других OptionStation-связанных методиках анализа.


312 "This word not allowed in a Volatility Model."
"Это слово не позволено в Модели Волатильности" Слово, подсвеченное PowerEditor, не позволяется в Модели Волатильности. Слова, подобные Buy, Sell и т.п. не разрешены в Модели Волатильности.


313 "This word not allowed in a Bid/Ask Model."
"Это слово не позволено в Модели Bid/Ask" Слову, подсвеченному PowerEditor, не позволяется входить в Модель Bid/Ask. Слова, подобные Plot1, Buy, Sell и т.п., не разрешены в этой методике анализа.


314 "This word is only allowed in ActivityBar studies."
"Это слово позволено только в изучениях ActivityBar" Слова, которые используются, чтобы установить свойства и отобразить ActivityBars, разрешены только в ActivityBars и не позволяются ни в каком другом изучении или стратегии.


315 "This value can only be assigned in a Volatility Model."
"Это значение может быть назначено только в Модели Волатильности" Значение, подсвеченное PowerEditor, может быть назначено только в Модели Волатильности. Обычно это относится к волатильности. Например, назначение значения волатильности в модели bid-ask произведет эту ошибку.


316 "This value can only be assinged in a Bid/Ask Model."
"Это значение может быть назначено только в модели Bid/Ask" Значение, подсвеченное PowerEditor, может быть назначено только в модели Bid-Ask. Обычно это относится к смоделированному значению предложения или спроса. Например, назначение значения смоделированного предложения в Ценовой Модели произведет данную ошибку.


317 "This value can only be assigned in a Pricing Model."
"Это значение может быть назначен только в Ценовой Модели" Значение, подсвеченное PowerEditor, может быть назначено только в Ценовой Модели. Обычно это относится к теоретической цене или любому из греков. Например, назначение значения delta в модели Волатильности произведет данную ошибку.


318 "A data alias (POSITION or MODELPOSITION) expected here"
"Псевдоним данных (POSITION или MODELPOSITION) ожидается здесь" При работе с методиками анализа OptionStation и обращении к небольшому количеству информации или выражению, относящемуся к позиции или смоделированной позиции, необходимо определить, что передаются данные от позиции или смоделированной позиции. Чтобы исправить эту ошибку, прибавьте спецификатор of Position или of ModelPosition к используемому выражению.


319 "A data alias (OPTION or LEG) expected here"
"Псевдоним данных (OPTION или LEG) ожидается здесь" При работе с методиками анализа OptionStation и с небольшим количеством данных, относящихся к опциону или элементу позиции, необходимо определить, к какому опциону или элементу Вы обращаетесь. Это делается добавлением спецификатора ofOption (n) или ofLeg (n) к выражению, подсвеченному PowerEditor.


320 "A data alias (ASSET or LEG) expected here"
"Псевдоним данных (ASSET или LEG) ожидается здесь" При работе с методиками анализа OptionStation и обращением к данным, необходимо определить то, к чему методика анализа обращается: актив или элемент позиции. Чтобы исправлять эту ошибку, добавьтесь спецификатор квалифицированный of Asset или of Leg() к используемому выражению.


321 "A data alias (OPTION) expected here"
"Псевдоним данных (OPTION) ожидается здесь" При работе с методиками анализа OptionStation и с небольшим количеством информации, относящейся к опциону, необходимо определить, к какому опциону или элементу Вы обращаетесь, прибавляя спецификатор ofOption (n) к выражению, подсвеченному PowerEditor.


322 "A data alias (ASSET) expected here"
"Псевдоним данных (ASSET), ожидается здесь" При работе с методиками анализа OptionStation и с небольшим количеством информации, относящей к основному активу, необходимо определенно заявить, что информация передана актива. Чтобы исправить эту ошибку, прибавьте спецификатор of Asset к подсвеченному выражению, когда отображается данная ошибка .


323 " ’Value-type inputs' may not be passed into 'reference-type inputs'."
" ’Константы типа значения’ нельзя передать в 'константы типа ссылки’ " Функции могут получить массивы и переменные параметры ссылкой или значением. Однако, если функция получает переменную или массив значением, то невозможно передать параметр для второй функции ссылкой. Если вход функции нужно передать другой функции, она должна также быть объявлена как вход ссылки.


324 "A data alias (LEG) expected here"
"Псевдоним данных (LEG) ожидается здесь" При работе с методиками анализа OptionStation и с небольшим количеством информации, относящей к определенному элементу, необходимо определить, какой элемент позиции должен использоваться. Чтобы исправлять данную ошибку, прибавьте спецификатор ofLeg (n) к подсвеченному выражению.


325 "Only an array, variable, or reference-input is allowed here"
"Только массив, переменная или константа ссылкой позволены здесь" Функции могут получать массивы как параметры. Если функция ожидает массив, любой другой тип параметра (переменная, константа или зарезервированное слово) отобразят данную ошибку. В следующем примере:
Variable: MyVar(0);
Value1 = Average_a(MyVar, 10);
функция Average_a() требует массив, чтобы вычислить среднее число и отображает эту ошибку, потому что MyVar - не массив.
Вместо этого, Вы можете записать:
Array: MyArray[20](0);
Value1 = Average_a(MyArray, 10);


340 "This word is only allowed when defining array-type inputs."
"Это слово позволено только при определении входа типа массив" Эта ошибка отображается при создании входа функции с использованием любого типа входа (типа NumericArray, NumericArrayref), полностью не квалифицируя вход фигурными скобками. Например, следующее выражение создает ошибку:
Input: MyInput(StringArrayRef);
потому что это не включает параметр размерности массива в скобки после названия массива. Правильный синтаксис был бы:
Input: MyInput[n] (StringArrayRef);


341 "An array input word (NUMERICARRAY, STRINGARRAY, TRUEFALSEARRAY, NUMERICARRAYREF, STRINGARRAYREF, TRUEFALSEARRAYREF) was expected here."
"Слово входа массива (NUMERICARRAY, STRINGARRAY, TRUEFALSEARRAY, NUMERICARRAYREF, STRINGARRAYREF, TRUEFALSEARRAYREF) ожидается здесь" Когда объявляются входы, которые предназначены, чтобы получить массив, ожидается одно из вышеупомянутых слов как тип входа. Например, данная ошибка будет отображена при объявлении входа для функции, при использовании следующей инструкции:
Input: MyArray[M,N] (Numeric);
так как зарезервированное слово Numeric недопустимо для того, чтобы объявить массивы. Однако, следующее выражение будет проверено успешно:
Input: MyArray[M,N](NumericArray);


342 "This word can only be used in a PaintBar study."
"Это слово может использоваться только в изучении PaintBar" Эта ошибка происходит, когда Вы используете зарезервированное слово PlotPaintBar при записи чего-нибудь другого, но не изучения PaintBar.


396 "This statement cannot specify an odd number of plots."
"Эта инструкция не может определить нечетное число графиков" Эта ошибка отображается при использовании инструкции PlotPaintBar и определении нечетного числа графиков. Есть два возможных использования для этой инструкции: определить только максимальное и минимальное значения, или определить маркеры high, low, open и close . Правильный синтаксис для инструкции PlotPaintBar::
PlotPaintBar(High, Low, "PB");
или
PlotPaintBar(High, Low, Open, Close, "PB");


403 "Cannot implicitly convert String to Numerical"
"Невозможно неявно конвертировать Строку в Число" Всякий раз, когда PowerEditor ожидает числовое выражение, а, вместо этого, находит текстовое строковое выражение, он подсветит текстовое строковое выражение и отобразит данное сообщение.
Например, следующая инструкция произведет эту ошибку:
Variable: MyNumber("55");
Value1 = Close +MyNumber;
Вместо этого, следующее выражение достигает ожидаемого результата, потому что оно сначала использует ключевое слово StrToNum(), чтобы конвертировать текстовое строковое выражение к числовому значению:
Variable: MyNumber("55");
Value1 = Close + StrToNum (MyNumber);


404 "Cannot implicitly convert String to TrueFalse"
"Невозможно неявно конвертировать Строку в TrueFalse" Всякий раз, когда PowerEditor ожидает истинно-ложное выражение и, вместо этого, находит текстовое строковое выражение, он подсветит текстовое строковое выражение и отобразит данное сообщение.
Например, следующая инструкция произведет ошибку:
Input: Text1("Yes"), Text2("No");
Condition1 = Text1 ;
потому что константа "Text1" был объявлена как текстовое значение и не может быть назначена на истинно-ложную переменную Condition1. Вместо этого, следующая инструкция правильна:
Input: Text1("Yes"), Text2("No");
Condition1 = (Text1 = Text2);
Обратите внимание, что в то время, как и Text1 и Text2 - строковые значения, результат сравнения - истинно-ложное значение, которое должным образом назначено на истинно-ложную переменную.


405 "Cannot implicitly convert TrueFalse to String"
"Невозможно неявно конвертировать True/False в Строку" Всякий раз, когда PowerEditor ожидает текстовое строковое выражение и, вместо этого, находит истинно-ложное выражение, он подсветит истинно-ложное выражение и отобразит это сообщение. В следующем примере, Condition1 - истинно-ложная переменная и не может быть непосредственно объединена со строкой:
FileAppend ("Output.txt", "This is a text string" + Condition1);
Вместо этого, следующее выражение исправляет проблему, создавая строковое значение, основанное на том, является ли Condition1 истинным или ложным:
Variable: txt(" ");
If Condition1 Then
txt = "true"
Else
txt = "false";
FileAppend("Output.txt", "This is a text string" + txt);


406 "Cannot implicitly convert Numerical to String"
"Невозможно неявно конвертировать Число в Строку" Всякий раз, когда PowerEditor ожидает текстовое строковое выражение и, вместо этого, находит числовое выражение, он подсветит числовое выражение и отобразит это сообщение.
Например:
FileAppend ("Output.txt", "This is text" + Value1);
отображает ошибку, когда найдено числовое выражение. Вместо этого, следующее выражение достигнет ожидаемых результатов, потому что оно использует ключевое слово NumToString(), чтобы конвертировать числовое выражение в строковое:
FileAppend ("Output.txt", "This is text" + NumoStr (Value1, 2));


407 "Cannot implicitly convert TrueFalse to Numerical"
"Невозможно неявно конвертировать TrueFalse в Число" Всякий раз, когда PowerEditor ожидает числовое значение и, вместо этого, находит истинно-ложное выражение, он подсветит выражение и отобразит это сообщение.
Например, следующая инструкция произведет эту ошибку, потому что значение Condition1 - истинно-ложная переменная и не может быть назначено на числовую переменную Value1:
Value1 = Condition1;


408 "Cannot implicitly convert Numerical to TrueFalse"
"Невозможно неявно конвертировать Число в TrueFalse" Всякий раз, когда PowerEditor ожидает выражение true/false и, вместо этого, находит числовое выражение, он подсветит числовое выражение и отобразит это сообщение. Например, следующая инструкция производит ошибку, потому что зарезервированное слово Open - числовое значение, а не выражение true/false:
Condition1 = Open ;
Вместо этого, назначьте числовое значение Open на числовую переменную Value1:
Value1 = Open ;
Или, замените инструкцию, например:
Condition1 = Open > Close;
Обратите внимание, что, в то время как и Open и Close - числовые значения, результат сравнения - истинное/ложное значение, которое должным образом назначено на истинную/ложную переменную.


409 "String expression expected here"
"Строковое выражение ожидается здесь" Эта ошибка отображается всякий раз, когда PowerEditor ожидает строковое выражение и, вместо этого, это находит числовое или истинно-ложное выражение. Например, эта ошибка будет отображена при записи информации в файл с инструкцией FileAppend:
FileAppend ("file.txt", Value1);
потому что включает числовое выражение Value1 вместо текстовой строки. Числовые выражения могут быть преобразованными в строковые с использованием ключевого слова NumToStr(). Например:
FileAppend ("file.txt", NumToStr (Value1, 2));


569 "Buy or Sell name within double quotes expected here."
"Имена Buy или Sell в пределах двойных кавычек ожидаются здесь" При определении названия торгового сигнала, может использоваться только буквальная текстовая строка, и ее нельзя заменить переменной или константой. Следующие инструкции генерируют данную ошибку:
Variable: txt("MySignal");
Buy(txt) Next Bar at Market;
в то время как правильный способ назначить название сигнала состоит в том, чтобы использовать буквальную строку, типа:
Buy("Signal Name") Next Bar at Market;





Содержание (Contents)
ГЛАВА 1: Введение
Что такое EasyLanguage?
Что Вы можете Создать?
Дополнительные Ресурсы
ГЛАВА 2: Основные Элементы EasyLanguage
Как работает EasyLanguage
О Языке
Ссылка на Ценовые Данные
Выражения и Операторы
Ссылка на Предыдущие Значения
Управление Датами и Временем
Использование Переменных
Использование Констант
Управляющие структуры EasyLanguage
Запись Предупреждений
Понятие Массивов
Понятие Функций Пользователя
Методы Вывода
Текстовый Объект на Ценовых Диаграммах
Trendlines на Ценовых Диаграммах
Понятие Полей Данных
Мультимедиа и EasyLanguage
ГЛАВА 3: EasyLanguage для TradeStation
Запись Торговых Сигналов
Механизм Тестирования Торговой Стратегии
Торговые Приказы
Понятие Встроенных Стопов
Запись Индикаторов и Изучений
Запись ShowMe и PaintBar
Запись ProbabilityMap
Запись ActivityBar
ГЛАВА 4: EasyLanguage для RadarScreen
Запись Индикаторов RadarScreen
Запись Индикаторов для Супердиаграмм SE
Определение Доступности Индикаторов
ГЛАВА 5: EasyLanguage для OptionStation
Анализ данных OptionStation
Чтение Данных OptionStation
Запись Индикаторов OptionStation
Запись Индикаторов для Супердиаграмм SE
Запись Поиска Стратегий
Запись Моделей OptionStation
Глобальные переменные OptionStation
ГЛАВА 6: EasyLanguage и Другие Языки
Определение Функции DLL
Использование Функций DLLs
Дополнительно О EasyLanguage DLL Extension Kit
ПРИЛОЖЕНИЕ 1. Синтаксические ошибки EasyLanguage
61 - 223
224 - 307
308 - 569
ПРИЛОЖЕНИЕ 2. Цвета, Размеры и Коды EasyLanguage




На правах рекламы:
Выгодная рендж ровер дискавери цена на сайте официального дилера