
A estratégia de compra-venda de abertura inversa é uma estratégia de negociação diária simples baseada na primeira linha K de uma ação. A ideia central da estratégia é determinar a direção de sua queda e fazer a operação inversa quando a primeira linha K surgir após a abertura de cada dia.
O princípio da estratégia baseia-se na peculiaridade da linha K da raiz inicial após a abertura. Quando a abertura é a mais intensa, a probabilidade de uma reversão é maior. Determinar a direção de queda da linha K da raiz inicial e fazer o contrário é a idéia central da estratégia.
Concretamente, após a abertura de um novo dia, a estratégia registra os preços de abertura, fechamento e queda da primeira linha K. Se o preço de abertura for maior que o preço de fechamento (linha verde), representando a vitória de cabeça vazia, faça mais; Se o preço de abertura for menor que o preço de fechamento (linha vermelha), representando a vitória de cabeça vazia, faça zero.
Ao mesmo tempo, a estratégia também estabelece mecanismos de parada e parada de perdas, incluindo o preço de parada de perdas, o preço de parada de perdas, o preço de parada de perdas e o preço de parada de perdas, para controlar o risco e o lucro das posições em aberto, evitando perdas excessivas ou corte prematuro de carne.
A estratégia de devolução de ações tem as seguintes vantagens:
O pensamento é simples, claro, fácil de entender e implementar.
A plataforma de negociação de criptomoedas, que tem como principal objetivo aumentar o número de criptomoedas disponíveis no mercado, foi lançada em janeiro.
Ao mesmo tempo, o Stop Loss Stopper é configurado para efetivamente controlar o risco.
O conceito de estratégia é universal e se aplica à maioria das ações.
O custo de participação é baixo e o controle financeiro é fácil.
A estratégia de reversão de abertura e devoramento também apresenta riscos, incluindo:
Probabilidade de falha de inversão do disco aberto. Se o sinal de inversão da linha K da raiz principal falhar, pode causar maiores perdas.
Não é possível filtrar de forma eficiente ações de baixa qualidade. A estratégia não fornece uma análise básica das ações, podendo selecionar algumas ações ruins com péssimas bases.
Incapacidade de controlar eficazmente o risco sistémico de um evento inesperado, como o impacto de uma notícia negativa significativa.
A configuração inadequada do Stop Loss Barrier pode aumentar os prejuízos ou reduzir os lucros.
A estratégia de devolução de disco pode ser otimizada em vários aspectos:
Aumentar o teste de eficácia do sinal de inversão de disco aberto, evitando o sinal de invalidez. Por exemplo, a análise de tráfego combinado.
Combinando os fundamentos das ações com os indicadores técnicos para a seleção de pools de ações, filtrando ações de baixa qualidade.
Aumentar o módulo de monitoramento de eventos e notícias importantes para controlar o risco sistemático.
A aplicação de algoritmos genéticos, métodos de aprendizado de máquina e outros métodos para otimizar dinamicamente a configuração de parada de danos.
A estratégia de devolução do disco aberto reversa, através da determinação da direção da primeira linha K e da operação de reversão, tenta agarrar a oportunidade de reversão após a abertura. A estratégia é simples, de baixo custo de participação e tem algum valor real. Mas também devemos estar atentos para reconhecer os riscos e aperfeiçoar e otimizar continuamente a estratégia na prática, tornando-a mais estável e confiável.
/*backtest
start: 2023-10-22 00:00:00
end: 2023-11-21 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © vikris
//@version=4
strategy("[VJ]First Candle Strategy", overlay = true,calc_on_every_tick = true,default_qty_type=strategy.percent_of_equity,default_qty_value=100,initial_capital=750,commission_type=strategy.commission.percent,
commission_value=0.02)
// ********** Strategy inputs - Start **********
// Used for intraday handling
// Session value should be from market start to the time you want to square-off
// your intraday strategy
// Important: The end time should be at least 2 minutes before the intraday
// square-off time set by your broker
var i_marketSession = input(title="Market session", type=input.session,
defval="0915-1455", confirm=true)
// Make inputs that set the take profit % (optional)
longProfitPerc = input(title="Long Take Profit (%)",
type=input.float, minval=0.0, step=0.1, defval=1) * 0.01
shortProfitPerc = input(title="Short Take Profit (%)",
type=input.float, minval=0.0, step=0.1, defval=1) * 0.01
// Set stop loss level with input options (optional)
longLossPerc = input(title="Long Stop Loss (%)",
type=input.float, minval=0.0, step=0.1, defval=0.5) * 0.01
shortLossPerc = input(title="Short Stop Loss (%)",
type=input.float, minval=0.0, step=0.1, defval=0.5) * 0.01
// ********** Strategy inputs - End **********
// ********** Supporting functions - Start **********
// A function to check whether the bar or period is in intraday session
barInSession(sess) => time(timeframe.period, sess) != 0
// Figure out take profit price
longExitPrice = strategy.position_avg_price * (1 + longProfitPerc)
shortExitPrice = strategy.position_avg_price * (1 - shortProfitPerc)
// Determine stop loss price
longStopPrice = strategy.position_avg_price * (1 - longLossPerc)
shortStopPrice = strategy.position_avg_price * (1 + shortLossPerc)
// ********** Supporting functions - End **********
// ********** Strategy - Start **********
// See if intraday session is active
bool intradaySession = barInSession(i_marketSession)
// Trade only if intraday session is active
//=================Strategy logic goes in here===========================
// If start of the daily session changed, then it's first bar of the new session
isNewDay = time("D") != time("D")[1]
var firstBarCloseValue = close
var firstBarOpenValue = open
if isNewDay
firstBarCloseValue := close
firstBarOpenValue := open
greenCandle = firstBarOpenValue < firstBarCloseValue
redCandle = firstBarOpenValue > firstBarCloseValue
buy = redCandle
sell = greenCandle
// plot(firstBarCloseValue)
// plot(firstBarOpenValue)
//Final Long/Short Condition
longCondition = buy
shortCondition =sell
//Long Strategy - buy condition and exits with Take profit and SL
if (longCondition and intradaySession)
stop_level = longStopPrice
profit_level = longExitPrice
strategy.entry("My Long Entry Id", strategy.long)
strategy.exit("TP/SL", "My Long Entry Id", stop=stop_level, limit=profit_level)
//Short Strategy - sell condition and exits with Take profit and SL
if (shortCondition and intradaySession)
stop_level = shortStopPrice
profit_level = shortExitPrice
strategy.entry("My Short Entry Id", strategy.short)
strategy.exit("TP/SL", "My Short Entry Id", stop=stop_level, limit=profit_level)
// Square-off position (when session is over and position is open)
squareOff = (not intradaySession) and (strategy.position_size != 0)
strategy.close_all(when = squareOff, comment = "Square-off")
// ********** Strategy - End **********