В процессе загрузки ресурсов... загрузка...

2.3 Общие объяснения API

Автор:Доброта, Создано: 2019-04-16 15:39:35, Обновлено: 2019-04-17 10:55:33

Резюме

Когда дело доходит до программирования, он должен быть неотделимым от API. Для многих не программистов, что такое API? В этом разделе мы будем использовать самый простой язык, чтобы объяснить, что такое API, и представить API, обычно используемые в FMZ Quant инструменты.

Что такое API?

Если вы поищите в Google, вы получите следующие результаты: API (Application Programming Interface) - это предопределенная функция, предоставляющая приложениям и разработчикам возможность доступа к набору процедур на основе программного или аппаратного обеспечения. без необходимости доступа к исходному коду или понимания деталей внутреннего рабочего механизма.

На самом деле, в повседневной жизни у нас есть много аналогичных сценариев API, например: вы идете в ресторан, чтобы поесть, просто посмотрите на меню, чтобы заказать, вам не нужно знать, как это сделать.

Что такое API в количественной торговле?

Например, если вам нужно получить начальную цену текущего сорта сегодня, вам не нужно точно знать, как ее получить. Вам нужно только написать OPEN в редакторе кода, просто используйте его напрямую, OPEN - это API для начальной цены на языке M.

Общий М-языковой API

Прежде чем мы поговорим об API языка M, давайте сначала посмотрим на общую структуру кода и какие функции она имеет. Это поможет вам лучше понять API. Пожалуйста, посмотрите следующий пример:

AA:=OPEN; //Get the opening price of the latest k line and assign the result to the variable AA
BB:=MA(ClOSE,10); //Get the 10-cycle moving average of the latest K line and assign the result to the variable BB

Код, показанный выше:

  • AA - это переменная, а переменная - это элемент, который можно изменить, как алгебра нашей младшей школы. Если начальная цена присвоена AA, то AA - это начальная цена; если самая высокая цена присвоена AA, то AA - самая высокая цена. AA - это просто пользовательское название, вы также можете определить его как BB или что-то еще.

  • := - это значение задания, то есть значение справа от := дается переменной слева.

  • OPEN и MA являются API языка M. Обратите внимание, что OPEN в первой строке является API для получения цены закрытия. Его можно использовать непосредственно. MA во второй строке является API для получения скользящей средней. Он должен быть продан 2 параметрами, что означает, что вам нужно сказать инструменту торговли FMZ Quant, какой скользящей средней вам нужен: Если вы хотите получить 50-периодную скользящую среднюю, рассчитанную по цене открытия, вы можете написать: MA (OPEN, 50); пожалуйста, убедитесь, что между параметрами есть запятая.

  • Желтый // - это символ комментария, а английский за ним - содержание комментария. Все они рассматриваются программистами, чтобы указать, что означает строка кода. Комментарий не будет обрабатываться во время запуска программы.

С базовым пониманием структуры кода, мы приведем вам некоторые общие грамматики языков M ниже, и мы будем использовать их в будущем.

  • Открыть - получить начальную цену последней линии K

Пример: AA:=OPEN; Получить цену открытия последней линии K и назначить результат AA

  • HIGH - получить самую высокую цену последней линии K

Пример: AA:=HIGH; Получить самую высокую цену последней линии K и назначить результат AA

  • Низкий - получите самую низкую цену последней линии K

Пример: AA:=LOW; Получить самую низкую цену последней линии K и назначить результат AA

  • Когда линия K не закончена, получите последнюю цену.

Пример: AA:=CLOSE; Получить цену закрытия последней линии K и назначить результат AA

  • VOL - Получить объем последней строки K

Пример: AA:=VOL; Получить объем последней строки K и назначить результат AA

  • REF ((X,N) - относится к значению X перед N циклами.

Пример: REF(CLOSE,1); Получить начальную цену проницаемой линии K

  • MA(X,N) - найдите простую скользящую среднюю величину X в N циклах

Пример: MA ((CLOSE, 10); //Получить 10-цикличный скользящий средний из последней K-линии

  • КРОССУП ((A,B) Представляет, что когда A проходит через B снизу, он возвращает 1 (Да), в противном случае он возвращает 0 (Нет)

Пример: CROSSUP (CLOSE, MA (C, 10)) // цена закрытия вверх через скользящую среднюю цену 10-го цикла

  • CROSSDOWN ((A,B) Представляет, что когда A проходит через B сверху, он возвращает 1 (да), в противном случае он возвращает 0 (нет)

Пример: CROSSDOWN(CLOSE, MA(C,10)) // цена закрытия вниз через среднеподвижную цену 10-ти циклов

  • BK - покупка длинной открытой позиции

Пример: CLOSE>MA(CLOSE,5), BK; // Цена закрытия больше скользящей средней за 5 циклов, открытая длинная позиция

  • SP - продажа для закрытия длинной позиции

Пример: CLOSE

  • SK - продажа короткой открытой позиции

Пример: CLOSE

  • BP - покупка для покрытия и закрытия короткой позиции

Пример: CLOSE>MA(CLOSE,5), BP; // Цена закрытия больше скользящей средней за 5 циклов, закрытие короткой позиции

  • BPK - закрытие короткой позиции и открытие длинной позиции (обратная открытая позиция)

Пример: CLOSE>MA(CLOSE,5), BPK; // когда цена закрытия выше 5-периодного скользящего среднего, закрыть короткую позицию и открыть длинную позицию.

  • SPK - закрытие длинной позиции и открытие короткой позиции (обратная открытая позиция)

Пример: CLOSE

  • CLOSEOUT - закрыть все позиции, рекомендуется использовать в операции сложения и вычитания позиции

Пример: CLOSEOUT; закрыть все позиции, которые в настоящее время удерживаются.

Часто используемый язык JavaScript API

Прежде чем объяснить API языка JavaScript, давайте посмотрим, что такое общая структура кода и какие функции она имеет. Это поможет вам лучше понять API. Пожалуйста, посмотрите следующий пример:

var aa = exchange.GetRecords(); // get the K-line data
var bb = exchange.SetContractType("This_week") // set the trading pair to weekly K-line

Код, показанный выше:

  • Создание переменных в языке JavaScript часто называют переменной declaration. мы используем ключевое слово var для декларирования переменной, название переменной: aa.

  • В языке JavaScript, присвоить знак равенства, то есть, дать значение на правой стороне = переменной слева.

  • Код exchange - это объект обмена. Обмен здесь относится к обмену, который вы настроили на странице платформы. Это фиксированный формат, то есть вы должны указать объект обмена при вызове API языка JavaScript.

  • Зелёный код - это API языка JavaScript. Когда мы его вызываем, он на самом деле вызывает функцию в объекте обмена. Обратите внимание, что точка за кодом также является фиксированным форматом. Функция здесь имеет то же значение, что и функция, которую мы узнали в средней школе. Если функция не нуждается в указании параметра, она представляется пустым скобком; если функция должна пройти в параметре, параметр записывается в скобках.

После использования случая, чтобы понять основную структуру кода, давайте посмотрим на несколько языковых API JavaScript, которые вы будете использовать в будущем.

  • SetContractType (variety code ) - установить торговую пару, которая является торговой разновидностью, которой вы хотите торговать

Пример: exchange.SetContractType ((this_week); //Установите торговую пару на еженедельную K-линию

  • GetTicker - Получить данные Tick

Пример: exchange.GetTicker(); //Get Tick данные

  • GetRecords - получать данные строки K

Пример: exchange.GetRecords(); //Get K строки данных

  • Купить - купить долго

Пример: обмен.Купить ((5000, 1); //Купить одну единицу по 5000

  • Продать - продать коротко

Пример: exchange.Sell (5000, 1); // Продайте одну единицу по 5000

  • GetAccount - получить информацию о счете

Пример: exchange.GetAccount(); //Get account information (Получить информацию об аккаунте)

  • GetPosition - Получить информацию о положении

Пример: exchange.GetPosition(); //Get информация о позиции

  • SetDirection - устанавливается для выполнения типа ордера длинного или короткого типа

Пример:

exchange.SetDirection ((buy); //Установите тип ордера для открытия длинных позиций

exchange.SetDirection ((closebuy); //Установите тип ордера для продажи для закрытия длинных позиций

exchange.SetDirection ((sell); //Установите тип ордера для открытия коротких позиций

exchange.SetDirection ((closesell); //Назначьте тип ордера для покупки для закрытия короткой позиции

  • Журнал - выводит сообщение в журнале

Пример: Log ((hello, World ); //вывод "hello world" в журнале

  • Сон - на некоторое время приостановить программу

Пример: Спящий (1000); / / сделать паузу программы на 1 секунду (1000 миллисекунд равно 1 секунде)

У некоторых людей могут быть сомнения, так много API выше, как я могу запомнить все это? на самом деле, вам не нужно помнить ни одного из них, FMZ Quant официальный сайт имеет подробную документацию API. Точно так же, как и поиск словаря, всякий раз, когда вы используете его, вам нужно только проверить его через нашу документацию. Не бойтесь кодирования часть. Мы хотим организовать наши собственные стратегии через эти языки. Пожалуйста, помните, что технология никогда не является порогом для количественной торговли. Отличная стратегия торговли является наиболее важным из всех.

Подводя итог

Вышеперечисленный наиболее часто используемый API в количественной торговле, в основном включающий: получение данных, расчет данных, размещение заказов. Эти шаги должны быть достаточными для решения простой количественной торговой стратегии. Кроме того, если вы хотите написать более сложную стратегию, вам нужно перейти на веб-сайт FMZ Quant, чтобы получить ее.

Послешкольные занятия

1, попробуйте написать в языке М 5-цикличное среднее строчковое предложение с перемещением 10-цикличного среднего строчка.

2, попробуйте использовать язык JavaScript GetAccount для получения информации о вашем аккаунте, и используйте Log для печати ее в журнале.

Следующее сообщение

Программирование похоже на сборку блоков LEGO. API похож на различные части строительного блока. Процесс программирования заключается в том, чтобы сделать каждую часть Lego полной игрушкой. В следующем разделе я приведу вас к сборке полной количественной стратегии торговли с использованием языка API M.


Больше