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

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

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

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


224 "Signal name already used."
"Имя сигнала уже используется" PowerEditor не позволяет многократное использование названия в двух различных ордерах. Это обязательное условие, что все ордера имеют различные названия. Следующая инструкция Sell генерирует данную ошибку:
If Condition1 Then
Buy ("MySignal") Next Bar at Market;
If Condition2 Then
Sell ("MySignal") Next Bar at Market;
потому что оба ордера не могут иметь одно и тоже название.


226 "Next bar's prices can only be used in a signal."
"Следующий бар может использоваться только в сигнале" На Open, Date и Time следующего бара можно сослаться только от сигнала; никакой другой анализ не имеет доступа к этой информации.


227 "Default expected here."
"Значение по умолчанию ожидается здесь" При объявлении константы в любой методике анализа, Вы должны включить значение по умолчанию в круглые скобки. Данная ошибка будет отображаться всякий раз, когда не указано никакое значение по умолчанию (круглые скобки пусты). Например, ниже - правильный синтаксис того, как объявить константу со значением по умолчанию 15:
Input: MyInput(15);


229 "Invalid initial value."
"Недопустимое начальное значение" Начальное значение должно быть определено при объявлении переменной или массива. Это начальное значение должно быть включено в круглые скобки и используется:
1) определяет тип переменной или массива (числовая, истинно-ложная или текстовая строка);
2) назначает начальное значение переменной или массива на первом баре.
Правильный синтаксис при объявлении переменной:
Variable: MyVariable(10);
где начальное значение, назначенное на эту переменную - 10, которое является числовым значением.


230 "Initial value expected here."
"Начальное значение ожидается здесь"
Начальное значение должно быть определено при объявлении переменной или массива. Это начальное значение должно быть включено в круглые скобки и используется:
1) определяет тип переменной или массива (числовая, истинно-ложная или текстовая строка);
2) назначает начальное значение переменной или массива на первом баре.
Правильный синтаксис при объявлении переменной:
Variable: MyVariable(10);
где начальное значение, назначенное на эту переменную - 10, которое является числовым значением.


231 "Function has no inputs. Parenthesis not needed."
"Функция не имеет входов. Лишняя круглая скобка" Эту ошибку показывает PowerEditor, когда круглые скобки используются для функции, которая не имеет входов. Например, функции Range EasyLanguage не имеет никаких входов, так следующая инструкция:
Value1 = Range ( 10);
отображает сообщение об ошибке и подсвечивает первую круглую скобку перед параметром.


232 "Matching left comment brace'{' is missing."
"Соответствующая поставленной скобе комментария '{' скобка отсутствует" PowerEditor отображает эту ошибку всякий раз, когда находит правую скобу комментария "}" без соответствующей левой скобки комментария. Чтобы исправить эту ошибку, найдите начало текста комментария и разместите левую скобу комментария. Если нет никакого комментария в вашей методике анализа, то удалите правую скобу комментария.


233 "Extra right parenthesis."
"Дополнительная правая круглая скобка" При записи любого типа выражения или инструкции, которые требуют круглых скобок, необходимо иметь согласованные левые и правые круглые скобки. Данная ошибка отображается, если есть лишние правые круглые скобки в оцениваемом выражении. Например:
Value1 = (Close + Open) ) /2


234 "END found without matching BEGIN."
"END найдено без соответствующего BEGIN" Эта ошибка отображается всякий раз, когда блочная инструкция содержит End, не согласованный с Begin.


237 "Position Information function not allowed in a study."
"Функция информации позиции не позволена в изучении" Информационные слова позиции стратегии могут использоваться только в сигналах и функциях. Эта ошибка будет сгенерирована, если любое из таких слов найдено в чем-нибудь другом, чем сигнал или функция.


238 "Performance Information function not allowed in a study."
"Выполнение информационной функции не позволено в изучении" Информационные слова выполнения стратегии могут использоваться только в сигналах и функциях. Эта ошибка будет сгенерирована, если любое из таких слов найдено в чем-либо другом, чем сигнал или функция.


239 "Array name too long."
"Имя массива слишком длинное" Имена массивов могут иметь до 20 символов. Сообщение об ошибке будет отображено, если название массива, используемое в инструкции объявления имеет больше чем 20 символов.


240 "This signal name does not exist."
"Это имя сигнала не существует" Эта ошибка отображается при связи выхода с несуществующим названием входа. Например, следующий сигнал производит эту ошибку:
Buy ("Break") Next Bar at Highest (High, 10) Stop;
ExitLong From Entry ( "BreakOut" ) Next Bar at Low Stop;
потому что выход неправильно обращается к входу, маркированному как "BreakOut", которое не существует в этом сигнале. Изменение названия входа на, "Break" исправит эту ошибку.


241 "Cannot exit from an exit signal."
"Невозможно выйти из сигнала выхода" Эта ошибка отображается, когда сигнал выхода по ошибке связан с другим сигналом выхода. Сигналы выхода могут быть связаны только с входом с помощью команды from Entry ("entry name"). Например, следующие инструкции генерируют данную ошибку:
If Condition1 Then
Buy ("MyEntry") This Bar at Close;
If Condition2 Then
ExitLong ("MyExit") This Bar at Close;
ExitLong from Entry ("MyExit") Next Bar at Lowest(Low,10) Stop;
Однако, следующие инструкции правильны:
If Condition1 Then
Buy ("MyEntry") This Bar at Close;
If Condition2 Then
ExitLong ("MyExit") This Bar at Close;
ExitLong From Entry ("MyEntry") Next Bar at Lowest(Low,10)
Stop;


242 "Cannot exitshort from a buy signal."
"Не может быть exitshort от сигнала покупки" Эта ошибка будет отображена, когда сигнал выхода из короткой позиций связан по ошибке с сигналом входа в длинную позицию. Сигналы выхода из короткой позиции могут быть привязаны к входу только в короткую позицию, с помощью команды from Entry ("entry name "). Например, следующие инструкции генерируют эту ошибку:
If Condition1 Then
Buy ("MyEntry") This Bar at Close;
ExitShort From Entry ("MyEntry") Next Bar at Lowest (Low, 10)
Stop;
В этом случае ошибка может быть исправлена использованием соответствующей команды выхода, ExitLong:
If Condition1 Then
Buy ("MyEntry") This Bar at Close;
ExitLong From Entry ("MyEntry") Next Bar at Lowest (Low, 10)
Stop;


243 "Cannot exitlong from a sell signal."
"Не может быть exitlong от сигнала продажи" Эта ошибка будет отображена, когда сигнал выхода из длинной позиции связан по ошибке с сигналом входа в короткую позицию. Сигналы выхода из длинной позиции могут быть привязаны к входу в только длинную позицию с помощью команды from Entry ("entry name "). Например, следующие инструкции генерируют данную ошибку:
If Condition1 Then
Sell ("MyEntry") This Bar at Close;
ExitLong from Entry ("MyEntry") Next Bar at Low Stop;
В этом случае ошибка может быть исправлена использованием соответствующей команды выхода, ExitShort:
If Condition1 Then
Sell ("MyEntry") This Bar at Close;
ExitShort from Entry ("MyEntry") Next Bar at Low Stop;


244 "At$ cannot be used after the word TOTAL."
"At$ не может использоваться после слова TOTAL" EasyLanguage не позволяет зарезервированному слову Total , которое будет связано с информацией бара входа, использовать команду AT$. Например, следующая инструкция генерирует данную ошибку:
ExitLong 20 Shares Total From Entry ("MyEntry") At$ Low Stop;


247 "References to previous values are not allowed in simple functions."
"Ссылка на предыдущие значениям не позволяется в простых функциях" На предшествующие значения простых функций, простых переменных или простых выражений нельзя сослаться изнутри простой функции. Если это необходимо для вычисления функции, то тогда функция должна быть установлена как серийная, а не простоя. Далее неправильный пример:
MyFunction = MyFunction[1] + Close;
генерирует ошибку, если MyFunction - простая функция со ссылкой на свои предыдущие значениям. Установка в Properties функции на "Series" исправит данную ошибку.


248 "Either PUT, CALL, ASSETTYPE, or FUTURETYPE expected here."
"или PUT, CALL, ASSETTYPE или FUTURETYPE ожидается здесь" Эта ошибка отображается, когда создается элемент позиции в Поиске стратегии с помощью ключевого слова CreateLeg без определения соответствующего типа элемента. Надлежащий синтаксис для этой инструкции:
CreateLeg (5, Call);
который создает элемент, состоящий из покупки 5 коллов.


250 "Cannot reference a previous value of a simple input."
"Нельзя ссылаться на предыдущее значение простой константы" Исторические значения простых констант в функциях не сохраняются EasyLanguage, т.о. обращение к их предыдущим значениям не разрешается. Например, в следующем примере:
Input: MyVal(NumericSimple);
MyFunction = MyVal[5];
значение MyVal[5] не разрешено в этой функции, так как оно включает ссылку на значение константы пять баров назад, но объявлено как константа NumericSimple. Если ссылка на предыдущие значения необходима, измените тип константы на серийный.


251 "Variables and arrays not allowed here."
"Переменные и массивы не разрешены здесь" В предыдущих версиях программы, до 2000i, эта ошибка отображалась при попытке передать переменные или массивы в серийную функцию.
Value2 = Average (Close, Value1);


253 "Cannot reference a previous value of this input."
"Нельзя ссылаться на предыдущее значение этой константы" Исторические значения простых констант в функциях не сохраняются EasyLanguage, т.о. обращаться к их предыдущим значениям не позволяется. Например, в следующем примере:
Input: MyVal(NumericSimple);
MyFunction = MyVal[5];
значение MyVal [5] не разрешено в этой функции, так как оно включает ссылку на значение константы пять баров назад, но было объявлено как константа NumericSimple. Если ссылка на предыдущие значения необходима, измените тип константы на серийный.


258 "Variables, arrays and inputs not allowed here."
"Переменные, массивы и константы не позволены здесь" Эта ошибка отображается, когда переменная, массив или константа используются как инициализатор для входного значения, типа:
Vars: MyVar(3);
Input: MyInput (MyVar);


259 "This number is too big."
"Это число слишком большое" PowerEditor отображает эту ошибку всякий раз, когда обнаруживает число, который находится вне поддерживаемого диапазона (число, который является слишком большим). Следующая инструкция производит данную ошибку:
Value1 = 99999999999999999999 ;


260 " 'Next Bar’ can only be applied to 'OPEN', 'DATE' and ’TIME'."
" 'Next Bar’ может быть применен только для 'OPEN', 'DATE' and ’TIME' " Единственные данные, доступные от следующего бара, которые могут читаться в сигнале, являются Open, Date и Time. Ко всем другим данным от следующего бара нельзя обратиться.


261 "The word 'BAR' expected here."
"Слово 'BAR' ожидается здесь " Эту ошибка показывается при записи ордера в сигнале, где слово Bar пропущено в выражения. Например, следующее выражение:
Buy Next on the Close;
генерирует ошибку, потому что слово Bar отсутствует. Правильный синтаксис:
Buy Next Bar on the Close;


262 "At market order can only be placed for the next bar."
"Рыночный приказ может быть помещен только на следующем бара" Все методики анализа читаются и выполнены в конце каждого бара. Из-за этого рыночные приказы могут быть размещены для следующего бара. Ошибка будет сгенерирована всякий раз, когда рыночный приказ помещен, чтобы быть заполненным на этом баре, типа:
Buy This Bar at Market;


263 "Stop and limit orders can only be placed for the next bar."
"Стоповые и лимитированные приказы могут быть помещены только для следующего бара" Эта ошибка отображается при попытке записать стоповый или лимитированный приказ для текущего бара. Например, следующие выражение:
Buy This Bar at Low - Range Limit;
неверно, потому что Limit ордер не может быть помещен в This Bar. Чтобы быть правильным, Limit ордер должен быть на Next Bar:
Buy Next Bar at Low - Range Limit;


264 "On close order must be placed for this bar."
"Ордер на закрытии должен быть помещен на текущем баре" Учитывая, что все команды читаются в момент закрытия каждого бара, единственные типы ордеров, которые могут быть помещены в текущий бар - это ордера на закрытии бара. Всякий раз, когда This Bar включен как часть ордера, ордер может обращаться только к цене Close. Правильный синтаксис для ордеров на текущем баре (This Bar):
Buy This Bar at Close;


266 "Library name within double quotes expected here."
"Библиотечное имя в пределах двойных кавычек ожидается здесь" PowerEditor отображает эту ошибку при определении внешней функции DLL, если имя DLL отсутствует или неправильное. Первый элемент списка параметров в инструкции DefineDLLFunc должен быть именем DLL библиотеки в пределах двойных кавычек. Следующая инструкция генерирует данную ошибку:
DefineDLLFunc: int, "MyFunc", int;
Правильный синтаксис для этой инструкции:
DefineDLLFunc: "MyDLL", int, "MyFunc", int;


267 "DLL function name within double quotes expected here."
"Имя функции DLL в пределах двойных кавычек ожидается здесь" При определении функции DLL, название DLL должно быть включено в двойные кавычки. Например, следующее выражение - надлежащий пример такого определения функции, потому что он включает имя функции "user.dll", сопровождаемое типом возвращения DLL и параметрами:
DefineDLLFunc: "user.dll", int, "beep";


274 "Return type of this DLL function must be specified."
"Тип возвращения этой функции DLL должен быть определен" При объявлении функции DLL, типом возвращения функции должен быть второй перечисленный параметр. Следующее выражение - правильная инструкция объявления функции DLL с типом int после имени DLL
DefineDLLFunc: "MyDLL.DLL", int, "MyFunction", int;


276 "DLL name cannot be longer than 60 characters."
"Имя DLL не может быть более 60 символов" Название DLL, используемое для определения любой функции через инструкцию DefineDLLFunc, не может превышать 60 символов.


277 "DLL function name cannot be longer than 65 characters."
"Имя DLL функции не может быть более чем 65 символов" Название определенной функции, использующей инструкцию DefineDLLFunc не может превышать 65 символов.


278 "A variable expected here."
"Переменная ожидается здесь" Всякий раз, когда PowerEditor ожидает переменную, а находит другое зарезервированное или определяемое пользователем слово, он подсвечивает неожиданное слово и выдает данное сообщение. Например, когда функция ожидает переменную как один из параметров (потому что она ожидает получить переменную ссылкой).


279 "An array expected here."
"Массив ожидается здесь" Функции могут теперь получать массивы как параметры. Если функция ожидает массив, а вместо этого PowerEditor находит переменную, константу или другое зарезервированное слово (отличное от массива), он отображает данную ошибку. В следующем примере функция Average_a() вычисляет среднее число специфического массива, так что следующее выражение генерирует синтаксическую ошибку:
Variable: MyVar(0);
Value1 = Average_a (MyVar, 10);
Чтобы исправить эту проблему, Вы должны объявить MyVar как массив вместо целого числа. Должно быть написано:
Array: MyArray[20] (0 );
Value1 = Average_a(MyArray, 10);


280 "TrueFalse expression expected here."
"Выражение TrueFalse ожидается здесь" Эта ошибка отображается, когда PowerEditor ожидает выражение true/false, а находит числовое или текстовое строковое выражение вместо этого. Например:
Condition1 = High ;


281 "Mixing data types (NUMERIC, TrueFalse, String) not allowed."
"Смешанные типы данных (NUMERIC, TrueFalse, String) не позволены" Эта ошибка появляется, когда несовместимые типы данных объединены в отдельном выражении. В следующем примере:
Value1 = 100 + "12" ;
текстовая строка "12" не может быть непосредственно объединена с числовым значением. Для решения такой проблемы используйте соответствующее зарезервированное слово EasyLanguage , чтобы конвертировать данные к совместимому типу.
Например, используйте функцию StrToNum, чтобы конвертировать текстовую строку в числовое значение:
Value1 = 100 + StrToNum ("12");


283 "Signal has no inputs. Comma not needed."
"Сигнал не имеет констант. Запятая не нужна"
Когда включается сигнал через ключевое слово IncludeSignal, должен быть подан список констант, и каждая константа должна быть отделена запятой. Данная ошибка отображается, если сигнал не имеет никаких констант или константа по ошибке включена в инструкцию.
Следующее выражение - правильный синтаксис инструкции IncludeSignal сигнала без констант:
IncludeSignal: "My Trailing LX";


284 "There is no such signal."
"Нет такого сигнала" Эта ошибка отображается PowerEditor всякий раз, когда название сигнала, которое упоминает инструкция IncludeSignal, не существует в библиотеке сигнала.


285 "Strategy circular reference found."
"Найдена циклическая зависимость стратегии" Циклическая зависимость определяется как две формулы, которые обращаются к значению другой на текущем баре в своих вычислениях. Такой тип формулы не может быть решен EasyLanguage, поэтому, всякий раз, когда найдена циклическая зависимость, отображается данная ошибка.


286 "Cannot divide by zero."
"Нельзя делить на ноль" Эта ошибка будет отображаться при делении любого числового выражения на константу 0. Так, когда написано следующее выражение:
Value1 = Close / 0;
PowerEditor генерирует синтаксическую ошибку, потому что деление на ноль - математическая неопределенность и не может быть решено.


287 "File name expected here."
"Имя файла ожидается здесь" Эта ошибка отображается при использовании инструкции Print, чтобы послать информацию на принтер и используется недопустимое имя для названия файла. Имя файла должно быть определено как текст между двойными кавычками. Обратите внимание, что текстовое строковое выражение не будет принято как имя файла в инструкции Print. Например, PowerEditor отобразит данную ошибку при оценке следующей инструкции:
Print (File (Value1), Date, Time, Close);
Имя файла должно быть текстом, включенным в двойные кавычки; например:
Print (File ("c:\tradestation\test.txt"), Date, Time, Close);


288 "A file or directory name must be <260 characters and may not contain "/:*?<> |"."
"Файл или имя директории должен быть <260 символов и не может содержать "/: *? <> | " " Некоторые команды, подобные инструкции Print() и FileAppend(), требуют имени файла. Имя файла должно быть длиной менее 260 символов и не может иметь ни одного из символов, перечисленных в метке ошибки. Например, данная ошибка будет отображена при записи:
Print(File( "c: \data?.txt" , Date, Time, Close);
так как символ '?' - недопустимый символ и не может использоваться как часть имени файла.


291 "The word 'OVER' or 'UNDER' expected here."
"Слово 'OVER' или 'UNDER' ожидается здесь" Эта ошибка отображается при использовании слова Cross без Over или Under при записи истинно-ложного выражения. Например, следующее выражение произведет данную ошибку:
Condition1 = Close Crosses Open;
Правильный синтаксис был бы:
Condition1 = Close Crosses Over Open;


292 "Two constants cannot cross over each other."
"Две константы не могут пересечь друг друга" PowerEditor отображает эту ошибку всякий раз, когда логические операторы Crosses Over или Crosses Under используются для сравнения двух констант. Так как они - константы, то они никогда не будут пересекать друг друга, и инструкция отобразит ошибку, как в:
Condition1 = 10 Crosses Over 15;


293 "This plot has been defined using a different name."
"Этот график был определен с использованием другого имени" Значение графику может быть назначено более чем один раз в пределах методики анализа, но на него нужно всегда ссылаться, используя то же самое название. Например, следующая инструкция вызовет данную ошибку:
Plot1 ( Volume, "Vol");
If Volume > 1000000 Then
Plot1 (Volume, "V", Red) ;
потому что графику было назначено второе имя "V". Правильный синтаксис этой инструкцию:
Plot1 (Volume, "Vol" );
If Volume > 1000000 Then
Plot1 (Volume, "Vol", Red);


295 "This plot name has never been defined."
"Эти графические имена никогда не определялись" Эта ошибка отображается всякий раз, когда присутствует ссылка на график с названием, отличным от ранее определенного, или на график, который не существует. Например, следующие инструкции вызовут эту ошибку:
Plot1 (High, "H");
Value1 = Plot1 + Plot2 ;
так как Plot2 не был определен. PowerEditor подсвечивает второй образец команды Plot, чтобы указать, где произошла ошибка .


296 "This plot has never been assigned a value."
"На этот график никогда не назначалось значение" Эта ошибка генерируется при обращении к значению графика, который не был предварительно определен в методике анализа. Например, следующие инструкции произведут данную ошибку:
Plot1 (Average (Close, 10));
If Plot1 Crosses Over Plot2 Then
Alert;
потому что Plot2 не был определен


297 "Server field name too long; cannot be more than 30 characters."
"Имя поля сервера слишком длинное; не может быть более чем 30 символов" Поля сервера данных могут быть длиной до 30. Данная ошибка будет сгенерирована всякий раз, когда используется поле сервера с названием, которое имеет больше чем 30 символов, .


298 "Strategy Information (for plots) function not allowed in a strategy."
"Функция информации стратегии (для графиков) не позволена в стратегии" Ни одно из слов "Информации Стратегии для графиков" не может использоваться в пределах стратегии. Эти слова разработаны, чтобы использоваться в других методиках анализа, чтобы обращаться к общим данным стратегии. Однако есть определенные слова, которые могут использоваться из стратегии для обращения к этим данным.
Эти слова:
I_AvgEntryPrice
I_ClosedEquity
I_CurrentContracts
I_MarketPosition
I_OpenEquity


299 "Strategy Information function not allowed in a study."
"Функция информации стратегии не позволена в изучении" Слова информации стратегии (другие, чем информация стратегии для графиков) могут использоваться только в торговых сигналах и функциях. Эти слова, которые перечислены в Словаре EasyLanguage в разделах Strategy Performance и Strategy Position, могут использоваться только при записи торговых сигналов и функций.


300 "This plot has been defined with a different type."
"Эти графики различных типов" Значение на график может быть назначено не один раз, но оно должно всегда иметь один и тот же самый тип. Графические инструкции могут отобразить числовые, истинно-ложные и строковые выражения, но они не могут изменить тип данных в пределах методики анализа. Например, следующая пара инструкций Plot не разрешена в методике анализа, потому что они включают различные типы данных, а именно: первый график - текстовая строка, а второй - истинно-ложное значение:
Plot1( "This is a text string");
If Condition1 Then
Plot1 (Conditionl);


302 "Different number of dimensions specified in the array than the parameter."
"Число измерений массива отлично от указанного параметра" Эту ошибку показывается, когда массив передают в функцию с неправильным числом измерений. Например, эта ошибка будет сгенерирована, если функция ожидает единственное измерение, а посылается массив с двумя измерениями.
303 "Extraneous text is not allowed after the array-type parameter"
"Посторонний текст не позволен после параметра типа массива" При передаче массива в функцию должно использоваться только название массива. Данная ошибка отображается всякий раз, когда любой текст, слова или фигурные скобки добавлены после названия массива, который передают к функции. Например:
Array: MyArray[10](0);
Value1 = Average_a(MyArray[0], 10);
знак [ будет подсвечен, потому что индекс массива появляется после имени массива. Правильный синтаксис был бы:
Array: MyArray[10](0);
Value1 = Average_a(MyArray, 10);


304 "Numeric-Array Parameter expected here."
"Параметр числового массива ожидается здесь" Функции могут получать массивы как параметры. Если функция ожидает массив, любой другой тип параметра (переменная, константа или зарезервированное слово) отобразят эту ошибку. В следующем примере:
Variable: MyVar(0);
Value1 = Average_a(MyVar, 10);
функция Average_a () требует массив, чтобы вычислить среднее число и отображает данную, потому что MyVar - не массив.
Вместо этого, Вы можете записать:
Array: MyArray[20] (0 );
Value1 = Average_a(MyArray, 10);


305 "TrueFalse-Array Parameter expected here."
"Параметр TrueFalse-массива ожидается здесь" Функции могут теперь получать массивы как параметры. Если функция ожидает истинно-ложный массив а, вместо этого, PowerEditor находит переменную, константу или другое зарезервированное слово (отличное от истинно-ложного массива), то он отображает эту ошибку. Например, функция MyTrueFalse_a(), которая правильно использует истинно-ложные массивы, была бы написана следующим образом:
Array: MyArray[20](False);
Variable: MyTF (False);
MyTF = MyTruefalse_a (MyArray, 10);


306 "String Array Parameter expected here."
"Параметр строкового массива ожидается здесь" Функции могут теперь получать массивы как параметры. Если функция ожидает массив текстовых строк а, вместо этого, PowerEditor находит переменную, константу или другое зарезервированное слово (отличное от массива текстовых строк), то он отобразит эту ошибку. Например, функция Average_a(), которая объединяет все текстовые строки, которые находятся в массиве, в один, должна использоваться следующим образом:
Array: MyArray[20](" ");
Variable: MyText(" ");
MyText = Average_a(MyArray, 10);


307 "The word 'Cancel' must be followed by 'Alert'."
"Слово ' Cancel 'должен сопровождаться словом 'Alert' " При отмене предварительно включенного (допущенного) предупреждения, должна использоваться инструкция Cancel Alert. Данная ошибка отображается при использовании слова Cancel без слова Alert.





Содержание (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




На правах рекламы: