3.5 Визуальный язык программирования

Автор:Доброта, Создано: 2019-04-25 12:21:22, Обновлено: 2019-04-27 11:53:56

Резюме

В предыдущем разделе мы узнали о введении и характеристиках инструмента визуального программирования, примере "привет миру" и написании стратегии на торговой платформе FMZ Quant, чтобы объяснить предпосылки реализации торговой стратегии.

Модуль стратегии

Увеличение стадии

1, процент стадии рассечения K-линии рассчитывается путем расчета цены закрытия текущей линии K с разницей предыдущей цены закрытия N периодов. Например: Вычисляя стадию рассечения последних 10 K-линий, можно записать:

img

В приведенном выше коде, способ, которым компьютер выполняет стратегию, требует полного цикла, например, для расчета последнего инкремента этапа строки 10 k, вам нужно разделить его на следующие этапы:

1, компьютер должен четко знать, какой период k-линии вы хотите торговать.

2, После установки кода контракта, вы можете получить данные строки K контракта.

3, с данными K-линии, вы можете получить подробные данные о любой конкретной K-линии из него.

4, Для получения статистических данных о наращивании стадии, он должен сначала получить две K-линейные цены закрытия, например: предыдущие k-линейные цены закрытия и 11 k-линейные цены закрытия до него.

5, Наконец, вычислить увеличение стадии из этих 2 K-линии ценой закрытия.

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

Увеличение цен при значительном увеличении объемов торговли

Например: если цена закрытия текущей линии K равна в 1,5 раза цене закрытия предыдущих 10 линий K, что означает, что за 10 дней цена выросла на 50%; а объем торговли также увеличился более чем в 5 раз по сравнению с предыдущими 10 линиями K. можно написать:

img

Увеличение разрыва в ценах

Разрыв в ценах - это случай, когда самые высокие и самые низкие цены двух K-линий не связаны. Он состоит из двух K-линий, а разрыв в ценах - это эталонная цена точек поддержки и давления в будущем движении цен. Когда происходит разрыв в ценах, можно предположить, что началось ускорение по тренду с первоначальным направлением. можно написать:

img

Общие показатели технического анализа

  • Движущаяся средняя

img

С статистической точки зрения, скользящая средняя - это арифметическая средняя суточной цены, которая является траекторией тренда цены. Система скользящей средней является распространенным техническим инструментом, используемым большинством аналитиков. С технической точки зрения, это фактор, влияющий на психологическую цену технических аналитиков. Фактор принятия решений мышления является хорошим справочным инструментом для технических аналитиков.

img

  • Индикатор MACD

img

Индикатор MACD представляет собой двойную сглаживающую операцию, использующую быстрые (краткосрочные) и медленные (долгосрочные) скользящие средние и их агрегацию и разделение. MACD, разработанный в соответствии с принципом скользящих средних, устраняет дефект, что скользящая средняя часто излучает ложные сигналы, а также сохраняет эффект другого хорошего аспекта. Поэтому индикатор MACD имеет тенденцию и стабильность скользящей средней. Он использовался для изучения сроков покупки и продажи акций и предсказывает изменение цены на акции. Вы можете использовать его следующим образом:

img

  • Показатель KDJ

Индикатор KDJ - это технический индикатор, используемый для анализа и прогнозирования изменений в тенденциях акций и ценовых моделях в торгуемом активе.

KDJ - это производная форма индикатора стохастического осциллятора с единственным отличием в том, что он имеет дополнительную линию, называемую линией J. Значения линий %K и %D показывают, является ли ценность перекупленной (свыше 80) или перепроданной (ниже 20). Моменты пересечения %K %D - это моменты для продажи или покупки. Линия J представляет дивергенцию значения %D от %K. Значение J может превышать [0, 100] для линий %K и %D на графике.

img

Создание стратегии

Ментор Уоррена Баффетта, Бенджамин Грэм, однажды упомянул в книге "Умный инвестор" торговую модель, в которой акции и облигации динамически балансируются.

img

  • Эта торговая модель очень проста:

50% средств в руках инвестируются в фонды акций, а оставшиеся 50% инвестируются в фонды облигаций, то есть акции и облигации составляют половину каждого.

Ребалансировка позиции активов, основанная на фиксированных интервалах или изменениях рынка, восстанавливает соотношение акций к облигациям до первоначального уровня 1:1.

Это вся логика всей стратегии, включая когда покупать и продавать, и сколько покупать и продавать.

Номер 2

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

Если цена акций повышается, рыночная стоимость акций будет больше рыночной стоимости облигации. Когда соотношение рыночной стоимости этих двух превышает установленный порог, общая позиция будет скорректирована, акции будут проданы, а облигации будут куплены, чтобы соотношение стоимости акций к стоимости облигаций восстановилось до первоначального 1: 1.

img

Напротив, если цена акций падает, рыночная стоимость акций будет меньше рыночной стоимости облигации. Когда соотношение рыночной стоимости этих двух превышает установленный порог, общая позиция будет скорректирована, акции будут куплены, и облигации будут проданы, чтобы соотношение рыночной капитализации стоимости облигации к стоимости акций восстановилось до первоначального 1: 1.

Таким образом, соотношение между динамическим балансом акций и облигаций достаточно, чтобы наслаждаться прибылью от роста акций и уменьшить волатильность активов.

Поскольку это полная и взаимная стратегия, почему бы нам не использовать ее на рынке криптовалют?

No 3

  • Стратегия динамического баланса блокчейн-активов в BTC

Логика стратегии

Согласно текущей стоимости BTC, баланс счета сохраняется на уровне 5000 долларов наличными и 0,1 BTC, то есть первоначальное соотношение наличности к рыночной стоимости BTC составляет 1:1.

Если цена BTC поднимается до $6000, то есть рыночная стоимость BTC больше, чем баланс счета, и разница между ними превышает установленный порог, то (6000-5000)/6000/2 монеты продаются. Это означает, что BTC подорожала, и нам нужно обменять наличные обратно.

Если цена BTC падает до $ 4000, то есть рыночная стоимость BTC меньше баланса счета, и разница между ними превышает установленный порог, купить (5000-4000)/4000/2 монет. Это означает, что BTC обесценился, и мы должны купить BTC обратно.

Таким образом, независимо от того, ценится BTC или обесценивается, баланс счета и рыночная стоимость BTC всегда сохраняются динамически равными.

  • Условия покупки: если рыночная стоимость текущей позиции минус текущий доступный баланс составляет менее 5% от текущего доступного баланса, открыть позицию для покупки.

  • Условия продажи: если рыночная стоимость текущей позиции минус текущий доступный баланс превышает 5% текущего доступного баланса, открыть позицию для продажи.

Предусмотренные условия

  • Текущая котировка рынка

  • Текущие активы

  • Общая рыночная стоимость монет

  • Разница в стоимости фиатных денег и монет

Создание стратегии

  • Визуальное программирование Шаг 1

Мы рассчитываем выше четыре предпосылки условий, и назначить их для каждой разной переменной. блок кода выглядит так:

img

Обратите внимание, что общая стоимость монет - это общая рыночная стоимость монет, которые в настоящее время находятся в вашем распоряжении. Метод расчета заключается в том, что текущее общее количество позиций умножается на последнюю цену. Разница в активах - это общая рыночная стоимость монет минус текущий доступный баланс.

  • Визуальное программирование Шаг 2

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

То есть, если рыночная стоимость текущей позиции минус текущий доступный баланс составляет менее 5% текущего доступного баланса, открыть позицию для покупки. Если рыночная стоимость текущей позиции минус текущий доступный баланс составляет более 5% текущего доступного баланса, открыть позицию для продажи. как показано ниже:

img

Вся стратегия, кажется, написана, но имейте в виду, что программа выполняется сверху вниз и останавливается после выполнения.

Другими словами, программа должна постоянно проверять, достигнуты ли условия стратегии, и если это так, выполните логику, иначе она будет продолжать проверку.

img

Обратная проверка стратегии

Стратегия визуального программирования не принципиально отличается от стратегий, написанных в других языках программирования. Она также поддерживает историческое тестирование данных различных циклов и точности.

img

Для того, чтобы позаботиться о людях, которые все еще смущены, эта стратегия была опубликована на странице FMZ Quant Strategy Square и может быть непосредственно скопирована на вашу панель управления.

Конец

Закон 10 000 часов (чтобы стать профессионалом на определенной работе) всегда существует, но для трейдера на нулевой основе невозможно потратить 10 000 часов на исследование новой области.

С помощью визуального программирования вам не нужно помнить грамматику традиционного языка программирования при использовании модулей функций. Платформа FMZ Quant предназначена для того, чтобы помочь большему количественному трейдеру снизить барьер входа и увеличить свои интересы. Каждый может стать количественным трейдером!

Однако визуальное программирование как ступенька к количественному вхождению совершенно нормально, но оно также имеет свои ограничения, такие как неспособность разработать чрезмерно сложные и чрезмерно изысканные торговые стратегии.

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

С точки зрения профессионализма количественной торговли, будь то язык M или визуальное программирование, все они являются переходным языком, который входит в мир количественной торговли. Их лингвистические характеристики определяют ограничения в разработке торговых стратегий, ряд сложных стратегий менее вероятно достичь. Следующие разделы покажут вам, как выучить язык JavaScript, это формальный язык программирования высокого уровня, это путь, которым вы входите в старшую количественную торговлю.

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

  1. Попробуйте внедрить индикаторы полос Боллинджера в визуальное программирование.

  2. Попробуйте завершить торговую стратегию с помощью модуля торговли в этом разделе.


Больше