Краткосрочные торговые стратегии, основанные на разнице цен закрытия


Дата создания: 2023-09-28 15:08:39 Последнее изменение: 2023-09-28 15:08:39
Копировать: 2 Количество просмотров: 743
1
Подписаться
1617
Подписчики

Обзор

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

Стратегический принцип

Основная логика этой стратегии заключается в сравнении сегодняшней и вчерашней цены закрытия.

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

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

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

Стратегические преимущества

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

Стратегический риск

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

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

  1. В сочетании с другими показателями, такими как объем сделок, повышается точность сигналов
  2. Добавление логики стоп-лостара для контроля одноразовых потерь
  3. Оптимизация параметров, улучшение качества сигнала
  4. Удлинение торгового цикла и снижение частоты операций
  5. Увеличение управления позициями для повышения прибыльности

Направление оптимизации стратегии

Эта стратегия может быть оптимизирована в следующих направлениях:

  1. Многочисленные временные периоды- параметры стратегии отсчета с использованием разных временных циклов (солнечный, 4-часовой, 1-часовой и т. д.), выбор оптимальных временных циклов и параметров.

  2. В сочетании с показателями волатильности- Добавление индикаторов, учитывающих волатильность цен, таких как ATR, позволяет лучше создавать динамические пороги.

  3. Присоединение логики стоп-лоста- Установка разумных стоп-стопов для контроля одноразовых потерь.

  4. Оптимизация управления позициями- оптимизация размеров позиций и правил для создания складов, чтобы увеличить прибыль при одновременном обеспечении устранения убытков;

  5. Учитывайте стоимость сделки- Включение в отсчет расходов на транзакции, таких как комиссионные, скользящие точки, чтобы сделать отсчет более реальным.

  6. Внедрение машинного обучения- Применение алгоритмов машинного обучения для извлечения большей информации и создания более мощных торговых сигналов.

Подвести итог

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

Исходный код стратегии
/*backtest
start: 2023-08-28 00:00:00
end: 2023-09-27 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Daily Close Comparison Strategy (by ChartArt) repainting results", shorttitle="CA_-_Daily_Close_Strat", overlay=false)

// ChartArt's Daily Close Comparison Strategy
//
// Version 1.0
// Idea by ChartArt on February 28, 2016.
//
// This strategy is equal to the very
// popular "ANN Strategy" coded by sirolf2009,
// but without the Artificial Neural Network (ANN).
//
// Main difference besides stripping out the ANN
// is that I use close prices instead of OHLC4 prices.
// And the default threshold is set to 0 instead of 0.0014
// with a step of 0.001 instead of 0.0001.
//
// This strategy goes long if the close of the current day
// is larger than the close price of the last day.
// If the inverse logic is true, the strategy
// goes short (last close larger current close).
//
// This simple strategy does not have any
// stop loss or take profit money management logic.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 

threshold = input(title="Price Difference Threshold repainting results", type=float, defval=0.004, step=0.001)

getDiff() =>
    yesterday=security(syminfo.tickerid, 'D', close[1])
    today=security(syminfo.tickerid, 'D', close)
    delta=today-yesterday
    percentage=delta/yesterday
    
closeDiff = getDiff()
 
buying = closeDiff > threshold ? true : closeDiff < -threshold ? false : buying[1]

hline(0, title="zero line")

bgcolor(buying ? green : red, transp=25)
plot(closeDiff, color=silver, style=area, transp=75)
plot(closeDiff, color=aqua, title="prediction")

longCondition = buying
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = buying != true
if (shortCondition)
    strategy.entry("Short", strategy.short)