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

Простая и прямая, но интересная стратегия погони за подъемом и убийством дропа.

Идея стратегии

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

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

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

Как показано на рисунке выше:

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

Сращивание модулей стратегии

Поскольку идея стратегии очень проста, модули стратегии не очень большие.
Наше тестирование на истории началось в октябре 2018 года, менее чем за год появились как большие, так и маленькие шоки и трендовые котировки, которые могут предварительно протестировать стратегию.
Параметры тестирования:

Давайте посмотрим на результаты тестирования этой стратегии:

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

function main() {
    var basePrice = -1
    var addRatio = 0.02
      
    while (true) {
        var ticker = exchange.GetTicker()
        if (basePrice == -1) {
            basePrice = ticker.Last
        }
        
        if ((ticker.Last - basePrice) > 0 && ((ticker.Last - basePrice) / basePrice > addRatio)) {
            var acc = exchange.GetAccount()
            var amount = acc.Balance * addRatio / ticker.Last
            
            $.Buy(amount)
            basePrice = ticker.Last
        } 
        
        if ((ticker.Last - basePrice) < 0 && ((basePrice - ticker.Last) / basePrice > addRatio)) {
            var acc = exchange.GetAccount()
            var amount = acc.Stocks * addRatio
            
            $.Sell(amount)
            basePrice = ticker.Last
        }
    } 
}

Интересным аспектом этой стратегии является то, что актив счета изначально устанавливается равным валюте и денежной стоимости, например, торговые пары BTC_USDT, цена BTC в настоящее время составляет 10000, валюта счета распределяется на 5, а USDT выделено 50000р.

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

В бэктесте есть очевидные изменения.

Вы также можете установить больше USDT и меньше валют.

Соберите модуль и вместе опробуйте наши собственные программные торговые идеи.

Примеры стратегий визуализации:

https://www.fmz.com/strategy/121404
https://www.fmz.com/strategy/129895
https://www.fmz.com/strategy /123904
https://www.fmz.com/strategy/122318
Дополнительные стратегии см. на странице: https://www.fmz.com/square

Другие статьи из этой серии

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