Backtest é o processo de testar uma estratégia de trading em dados históricos. Ele permite que os traders avaliem a eficácia da sua estratégia e identifiquem seus pontos fortes e fracos. O backtest ajuda a entender como a estratégia se comportaria em diferentes condições de mercado e permite otimizar seus parâmetros para obter melhores resultados.
Todas as estratégias apresentadas abaixo podem ser testadas em dados históricos no testador de estratégias do TradingView.
O bot tem seu próprio backtester avançado embutido, que permite testar corretamente sistemas de trading inteiros e todos os recursos do bot! Descrição do testador: hamster-bot/bot/backtesting
Opere qualquer ideia e qualquer estratégia
É possível adicionar qualquer uma das suas estratégias ao hamster-bot - basta enviar seu pedido pelo formulário ou entrar em contato diretamente comigo
-
Funciona assim:
- Você tem uma estratégia interessante que quer operar de forma automatizada
- Envie um pedido pelo formulário. O ideal é que você já tenha o código Pine Script da estratégia
- Aguarde a notificação de que a estratégia foi adicionada
- Opere totalmente de forma automatizada com o bot na sua estratégia
Implementação completa da estratégia. Isso não é trading por alertas. Gerenciamento de ordens e posição em tempo real.
Se você não tem uma estratégia, mas tem uma ideia - Ótimo! Envie um pedido para que a ideia seja avaliada e transformada em uma estratégia de trading, seguida de teste da ideia em dados históricos.
Tabela resumo das estratégias
| Estratégia | Tipo | Entrada | Aumento de posição | Ponto fraco |
| Strategy Trend Zig Zag, ZZ (ZZ2, ZZ6) | tendência, rompimento | ordem stop no nível | não | mercado lateral, reversões em V |
| ZigZag Double, ZigZag MarketOrder, ZZ-Double-Market-Filter | tendência, rompimento | ordem stop / a mercado | não | mercado lateral, reversões em V |
| Donchian Channel | tendência, rompimento | ordem stop na borda do canal | não | mercado lateral |
| Channel Close Strategy | tendência, rompimento | a mercado no fechamento do candle | não | mercado lateral |
| RiskTurtle | tendência, rompimento | ordem stop na borda do canal | não | mercado lateral |
| Moving Average Crossover | tendência | a mercado no cruzamento de MAs | opcional | mercado lateral |
| Price vs MA | tendência | a mercado quando o preço cruza a MA | opcional | mercado lateral |
| MACD Trend | tendência | a mercado no cruzamento do MACD | opcional | mercado lateral |
| DoubleDragon | tendência, par de moedas | a mercado | não | proporção lateral |
| MRS | contra-tendência | limite na linha da MA | sim (várias MAs) | tendência forte sem correção |
| MRS2, MRS2 FAST | contra-tendência | limite na linha da MA | não | tendência forte sem correção |
| MRS3 | contra-tendência | limite na linha da MA | sim (várias MAs) | tendência forte sem correção |
| HiDeep | contra-tendência | a mercado no fechamento do candle | sim | queda prolongada |
| RedFlag | contra-tendência, só long | a mercado dentro do candle | sim | queda prolongada |
| SmartProfit | preço médio, só long | a mercado + grade de ordens limite | sim (grade) | queda prolongada |
| ShadowOverlap | contra-tendência, repique no pavio | a mercado ou limite | não | rompimento do nível |
| TV MAPM | contra-tendência | a mercado no sinal do MACD | sim | tendência prolongada |
| MZ | correção após impulso | limite | não (martingale após perda) | sequência de perdas |
| Volume Market | geração de volume de trading | a mercado | não | taxas |
Estratégias de tendência:
ZigZag, ZZ, ZZ-2, ZZ-6
A ideia principal da estratégia é pegar o mais cedo possível um movimento forte de tendência do mercado e manter a posição durante toda a tendência. A operação é aberta no momento do rompimento de níveis construídos previamente a partir das máximas/mínimas anteriores do preço.
A base é uma lógica parecida com o indicador ZigZag:
● Quando o mercado começa a virar para cima, é registrada uma mínima local
● Quando vira para baixo, uma máxima local
Esses pontos viram referências. Deles se formam os níveis que o mercado precisa romper para confirmar o movimento.
Reversível (flip long ↔ short)
A posição está sempre aberta e vira de short para long e vice-versa. (Se não forem usados modificadores da estratégia - eles estão descritos abaixo no bloco «Parâmetros e modificadores»)
⚠️ A estratégia gera operações com prejuízo quando o mercado está lateral e durante reversões em V.
Tipo de ordem: ordem Stop a Mercado (em algumas corretoras também pode se chamar ordem Condicional ou de Gatilho)
● Em verde está onde é colocada a ordem condicional de compra: o rompimento da última máxima relevante.
● Em vermelho, a de venda: o preço rompe a última mínima.
Depois de iniciar a estratégia, se não houver posição e o preço estiver entre os níveis, serão colocadas 1 ordem para abrir posição long e 1 para short. Se o preço não estiver entre os níveis ou houver posição aberta, será colocada 1 ordem.
Se houver posição aberta, pela estratégia deve existir apenas 1 ordem. Por padrão o tamanho dessa ordem = tamanho da posição * 2, para virar a posição (fechar e abrir uma nova do mesmo tamanho).
Strategy Trend Zig Zag e ZZ - qual a diferença
Strategy Trend Zig Zag (zigzag, selecionada por padrão ao criar o robô) - versão simples com o mínimo de configurações, equivalente ao script «Estratégia de tendência simples» no TradingView.
Os níveis são construídos da mesma forma que no ZZ2, e a posição é virada por ordens stop. Os modificadores e filtros do bloco «Parâmetros e modificadores» não são usados nela.
length- profundidade de busca da reversão (padrão 5)detection- comprimento da EMA de suavização (padrão 3)
ZZ (zz) - versão completa: dois tipos de níveis (ZZ2 e ZZ6) e todos os modificadores, filtros e configurações de tamanho de posição descritos abaixo.
Tipos de níveis: ZZ2 e ZZ6
ZZ2 (padrão) - os níveis são construídos pelos pontos de reversão do preço suavizado. O algoritmo é explicado em detalhe no bloco «Para os curiosos».
depth - profundidade de busca da reversão (padrão 5)
detection, detection_type, detection_source - comprimento, tipo (EMA por padrão) e fonte de preço da linha de suavização cujas reversões definem os pontos
rsi_len, rsi_value - condição adicional de RSI para o ponto de reversão. Não é usada quando rsi_value = 0
ZZ6 - os níveis são construídos por dois canais de máximas/mínimas: um rápido de comprimento zz6_len e um lento de comprimento zz6_len_slow (se não definido, zz6_len * 3).
O nível é fixado quando o canal rápido e o lento coincidem (o preço renovou o extremo) e o canal rápido começa a virar.
No ZZ6 o tamanho da posição depende do risco: quanto maior a distância entre os níveis (e portanto mais longe o stop), menor o lote.
zz6_risklong,zz6_riskshort- risco em % por operação. Lote = lote base * (risco % / distância entre os níveis em %)zz6_risk_one- usar para short o mesmo risco que para long (zz6_risklong)zz6_risk_max- limite superior para esse multiplicador de lote
Parâmetros e modificadores
Modo de operação
reverse- modo reverso (contra a tendência). No rompimento do nível superior o robô abre short, no rompimento do inferior, long. As ordens neste modo são a mercadoalways_in_position- se não há posição e o preço já passou do nível (por exemplo após fechar por stop ou take profit), o robô entra imediatamente com ordem a mercado na direção do rompimentoone_entry_long,one_entry_short- uma entrada por cada novo nível. Se a posição desse nível já foi fechada (por exemplo por take profit ou stop), o robô não entra de novo no mesmo nívelsingle_entry- reforça a opção anterior: a proibição de nova entrada é retirada não por um novo nível, mas só depois de uma entrada no sentido oposto
Ajuste dos níveis
level_offset_long,level_offset_short- deslocamento do nível por um valor fixo de preçolevel_multiplier_long,level_multiplier_short- deslocamento do nível em porcentagem. 1 - sem deslocamento, 1.01 - 1% acimaangle_long,angle_short- inclinação do nível. O nível é multiplicado por esse valor a cada nova vela e se desloca aos poucos em direção ao preço. 1 - nível horizontal
Filtros de entrada
Quando um filtro proíbe a entrada, o robô não abre nova posição, mas a ordem de fechamento da posição atual no nível oposto permanece.
use_distance_filter,distance_filter- não entrar se a distância entre os níveis for maior que a % definida (stop muito distante)use_flat_filter,flat_filter- não entrar se a distância entre os níveis for menor que a % definida (sinal de mercado lateral)use_narrowing- operar só quando os níveis se estreitam: a última máxima abaixo da anterior e a última mínima acima da anterioruse_ma_filter,ma_filter- não virar se a MA rápida já se afastou da lenta mais do que a % definida contra a nova direçãouse_ma_distance_filter,ma_distance_filter- não entrar se a MA rápida e a lenta estiverem mais próximas que a % definida (sem impulso)ma_fast_*,ma_slow_*- tipo, comprimento e fonte da MA rápida e da lenta para os dois filtros acimafilter_only_open- os filtros de distância valem só para a abertura da posição; virar a partir de uma posição já aberta é permitido- Filtro de tendência (bloco
filter, comum para ZZ e HiDeep) - veja a seção «Fechamento da posição e opções gerais»
Tamanho da posição
use_auto_risk- risco automático para ZZ2. O multiplicador de lote muda suavemente deauto_risk_coeff_startatéauto_risk_coeff_endconforme a distância entre os níveis: deauto_risk_procent_startatéauto_risk_procent_end%. Canal estreito - lote maior, largo - lote menorcount_pnl_profit,count_pnl_loss- ao virar, somar ao tamanho da nova posição o lucro ou o prejuízo da atualsize_control- proteção contra duplicação: se a posição por acidente ficar maior que duas entradas, o excesso é fechado com ordem a mercado
Fechamento da posição
use_tp_between_levels,tp_between_levels_value- fechar a posição com lucro se o preço voltou para dentro do canal entre os níveis e o lucro não é menor que a % definidastop_by_new_level- stop pelo novo nível. Se depois da entrada o preço rompeu um novo nível na direção da posição e depois voltou a ele, a posição é fechadaclose_on_wrong_side- fechar a posição se o preço passou do nível oposto em mais de 1% (por exemplo a ordem stop não disparou por causa de um gap)use_close_on_levels_crossing- fechar a posição se os níveis se cruzaram (o superior ficou abaixo do inferior)from_level_price- calcular o take profit e o lucro mínimo a partir do preço do nível, e não do preço real de entrada
Backtest
Testar no backtester integrado
Script (PineScript) para testar a estratégia em dados históricos no testador de estratégias do TradingView:
Recomendações:
(não são rígidas e podem ser quebradas para fins de pesquisa)
Timeframe de trabalho: 4h ou maior.
Para os curiosos
Algoritmo de construção dos níveis da estratégia ZZ2. Não é usado o indicador ZigZag padrão. Pelo código dá para ver como tudo é simples e que o repaint está descartado. Mas os níveis são construídos com atraso de algumas velas (isso não atrapalha em nada a estratégia)
São usadas três EMAs suavizadas em sequência. Isso cria uma suavização forte, reduzindo o ruído.
A variável z registra os pontos de reversão. Se a EMA vira para cima → é tomada a mínima local (l). Se vira para baixo → a máxima local (h). Esses pontos (l e h) viram a base para a construção dos níveis.
ZigZag Double, ZigZag MarketOrder, ZZ-Double-Market-Filter
Variantes do ZigZag com configurações separadas para long e short. O nível de compra é construído por um ZigZag (long_length, long_detection),
o de venda por outro (short_length, short_detection). Assim é possível, por exemplo, entrar em long por níveis mais sensíveis e em short por níveis mais grossos.
O bot roda a estratégia sobre o histórico e guarda uma "posição virtual". Se pelo histórico uma posição nessa direção já está aberta (por exemplo, a posição real foi fechada por take ou stop), não é feita uma nova entrada na mesma direção - o bot espera o próximo sinal.
- ZigZag Double (
zigzag_double) - entrada e inversão com ordens stop nos níveis, como no Strategy Trend Zig Zag - ZigZag MarketOrder (
zigzag_marketorder) - os mesmos níveis, mas a entrada é com ordem a mercado quando o candle cruzou o nível e o preço está além dele. A inversão também é a mercado - ZZ-Double-Market-Filter (
zz-double-market-filter) - ZigZag MarketOrder com screener embutido: entradas são permitidas só após um impulso de preço e volume (veja os parâmetros abaixo)
Como nas outras estratégias ZigZag, a posição é fechada se os níveis se cruzarem (o superior abaixo do inferior) ou se o preço passar do nível oposto em mais de 1%.
Parâmetros
long_length,long_detection- profundidade de busca da reversão e comprimento da EMA para o nível long (padrão 5 e 3)short_length,short_detection- o mesmo para o nível short (padrão 5 e 3)
Só para ZZ-Double-Market-Filter
screener_up_threshold_pct,screener_bars_back- sinal do screener: o preço subiu o % definido a partir do menor fechamento dos últimosscreener_bars_backcandles (padrão 5% em 3 candles). 0 - o screener nunca disparascreener_use_24h_vol_filter,screener_min_24h_vol_usdt- exigir também um volume de 24 horas de pelo menos o valor definido em USDT (padrão 1 000 000)screener_use_vol_growth_filter,screener_vol_growth_candles,screener_vol_growth_threshold_pct- o volume do candle atual deve ser maior que o menor volume de N candles no % definido (padrão 15 candles, 50%)screener_use_low_filter- entrar em long só se o candle atual tocou o níveluse_tema_filter,tema_length,tema_src- filtro de tendência por TEMA (padrão 200, close): long só quando a TEMA sobe, short só quando cai
Quando o screener dispara, os "portões se abrem" para o bot e é permitida uma operação pelos sinais do ZigZag. Depois que essa operação fecha, os portões se fecham até o próximo sinal do screener.
Donchian Channel
A estratégia clássica de rompimento do canal de Donchian. A borda superior do canal é a máxima de N candles, a inferior é a mínima de N candles, o centro fica no meio entre elas.
Entrada: ordem stop de compra na borda superior e ordem stop de venda na inferior. As ordens de entrada só são colocadas depois que o preço volta ao centro do canal.
Isso evita entrar em um movimento já esticado logo após a operação anterior.
Saída: stop-loss - ordem stop no centro do canal, take-profit - ordem limite a um % definido além da borda do canal. Os níveis de stop e take se movem junto com o canal.
⚠️ Como qualquer estratégia de rompimento, perde em mercado lateral: o preço toca a borda e volta ao centro.
Tipo de ordem usado: Ordem Stop a mercado (entrada e stop) e Limite (take-profit).
Parâmetros
channel_len- comprimento do canal em candles (padrão 25)use_tp,tp- ativar o take-profit e sua distância em % da borda do canal (padrão 10%)- Se o preço passar da borda oposta do canal em mais de 1%, a posição é fechada com ordem a mercado (proteção contra gaps)
Backtest
Testar no backtester embutido
O código do script (PineScript) para o testador de estratégias do TradingView "[TV] Donchian Channel" está disponível na interface do bot, na página da estratégia.
[TV] Channel Close Strategy
A versão mais simples do rompimento do canal de Donchian, com um único parâmetro. Boa para começar com estratégias de tendência.
Quando o candle fecha acima da máxima dos N candles anteriores - compra. Quando fecha abaixo da mínima - venda. A posição é invertida.
Todas as ações acontecem no fechamento do candle com ordem a mercado, por isso a estratégia funciona igual no testador e no mercado real.
⚠️ Perde em mercado lateral e em rompimentos falsos.
Parâmetros
len- comprimento do canal em candles (padrão 10)- Se o preço passar da borda oposta do canal em mais de 1%, a posição é fechada com ordem a mercado
RiskTurtle (Donchian Channel + gestão de risco)
Uma evolução da ideia das "tartarugas": entrada no rompimento do canal de Donchian lento, saída de proteção no centro do canal rápido.
A principal diferença é que o tamanho da posição é calculado pelo risco. A distância do ponto de entrada até o centro do canal rápido é a perda potencial. O bot ajusta o tamanho da posição para que essa perda seja igual ao % definido do depósito. Canal estreito - posição maior, canal largo - posição menor.
Tipo de ordem usado: Ordem Stop a mercado.
Parâmetros
slow_channel_len- comprimento do canal lento, em cujas bordas são colocadas as ordens de entrada (padrão 50)fast_channel_len- comprimento do canal rápido, cujo centro é usado para o fechamento de proteção (padrão 25)risk_long,risk_short- risco por operação em %risk_max- multiplicador máximo do lote, para que a posição não fique grande demais em um canal muito estreitolevel_offset_long,level_offset_short- deslocamento dos níveis de entrada por um valor fixo de preço
Moving Average Crossover, Price vs MA, MACD Trend
Três estratégias clássicas de tendência baseadas em médias móveis. Todas as ações são ordens a mercado por sinal no gráfico. O sinal oposto fecha a posição (sem inverter), e uma nova posição é aberta no próximo sinal.
- Moving Average Crossover (
movingaveragecrossover) - a MA rápida cruzou a lenta para cima - compra, para baixo - venda - Price vs MA (
pricevsma) - o preço de fechamento cruzou a MA para cima - compra, para baixo - venda. É possível entrar não só no momento do cruzamento, mas em qualquer candle enquanto o preço estiver do lado certo da MA - MACD Trend (
macdtrend) - a linha do MACD cruzou a linha de sinal para cima - compra, para baixo - venda. É possível ativar o filtro de tendência
⚠️ Como qualquer estratégia de tendência com MAs, perdem em mercado lateral por causa de cruzamentos falsos frequentes.
Parâmetros
Moving Average Crossover
fast_ma_type,fast_ma_source,fast_ma_len- MA rápida (padrão EMA, close, 9)slow_ma_type,slow_ma_source,slow_ma_len- MA lenta (padrão EMA, close, 21)
Price vs MA
ma_type,ma_source,ma_len- MA (padrão SMA, close, 200)use_cross_entry- entrar só no momento do cruzamento (padrão). Se desligado - entrada em qualquer candle quando o preço estiver acima da MA (long) ou abaixo (short)
MACD Trend
ma_source,fast_len,slow_len,signal_len- fonte do preço e comprimentos das EMAs do MACD (padrão close, 12, 26, 9)use_trend_filter- long só em tendência de alta, short só em tendência de baixa. Funciona junto com o bloco de filtro de tendênciafilterativado (veja "Filtro de tendência")
Comum às três
count_max- número máximo de entradas na posição, incluindo a primeira (padrão 1 - sem adições). A adição acontece com um novo sinal na mesma direção (no Price vs MA - só comuse_cross_entrydesligado)entry_gap- passo mínimo da adição: a próxima entrada só se o preço estiver abaixo do preço da entrada anterior *entry_gap(para long; para short - espelhado). Por exemplo 0.98 - não mais perto que 2%. 0 - sem limite
DoubleDragon (em fase experimental)
É a mesma estratégia ZigZag, mas usada de um jeito um pouco diferente. Toda a diferença está em olhar o backtest no gráfico da proporção entre duas moedas XXXUSDT/xxxusdt.
Onde no gráfico sintético do testador de estratégias abre uma posição Long, no mercado real abre um Long em XXXUSDT e um Short em xxxusdt.
Onde abre uma posição Short, no mercado real abre um Short em XXXUSDT e um Long em xxxusdt.
Parâmetros
Para a estratégia são iniciados dois bots - um para cada moeda do par. Os níveis são construídos no gráfico sintético da proporção de preços e calculados com as configurações do primeiro bot.
index- qual moeda do par é esta: 1 - numerador (XXXUSDT), 2 - denominador (xxxusdt)strategy- por quais níveis operar o gráfico sintético:zigzag(padrão) oudonchianzigzag- bloco de configurações do ZigZag:length,detection,detection_source(como no Strategy Trend Zig Zag)donchian- bloco de configurações do canal de Donchian:channel_len,use_tp,tp,detection_source(como no Donchian Channel)reverse- modo inverso: as direções das operações são trocadas
Backtest
Testar no backtester embutido
Script (PineScript) para testar a estratégia em dados históricos no testador de estratégias do TradingView:
Mas como entrada no testador de estratégias escolhemos um gráfico sintético em vez de um único par de negociação.
O gráfico sintético da proporção BYBIT:XXXUSDT.P/BYBIT:xxxusdt.P (onde XXX é qualquer criptomoeda com preço maior que xxx)
Resultado do testador de estratégias em 2025, BYBIT:ETHUSDT.P/BYBIT:APTUSDT.P no timeframe 1D:
Estratégias contra-tendência:
Reversão à média | Estratégia MRS (Envelope, ShiftMA, MultiMA, Colorbox)
MRS - Mean Reversion Strategy. É uma estratégia contra-tendência baseada na suposição de que o preço volta à sua média depois de se desviar dela. A ordem de abertura é colocada a uma distância do preço médio. A ordem de fechamento é colocada no preço médio, sem deslocamento. Em um desvio brusco do preço a posição é aberta e fecha quando o preço volta à média.
As operações são geradas quando o preço se afasta da média em um certo percentual. ⚠️ Mas se o preço continuar se movendo na mesma direção sem correção, a posição ficará no prejuízo. O preço cai - a estratégia compra (vai contra a tendência). O preço sobe - ela vende (também contra a tendência). Mas, cedo ou tarde, o fechamento acontece no preço médio.
Em geral, nesta estratégia as posições são mantidas por pouco tempo. E em um mercado calmo é possível ficar muito tempo sem posição.
Tipo de ordem usado: Limite. Colocada antecipadamente e movida conforme o preço médio muda.
Na forma mais simples há três linhas MA (médias móveis) no gráfico.
● A MA base Fúcsia mostra o preço da ordem limite de fechamento. Sem deslocamento
● A MA Long Verde - preço da ordem limite BUY que abre a posição LONG. É a MA base deslocada um % para baixo.
● A MA Short Vermelha - preço da ordem limite SELL que abre a posição SHORT. É a MA base deslocada um % para cima.
Como funciona: se long e short estiverem ativados, são colocadas 2 ordens. Se só long ou só short, 1 ordem. Enquanto aguardam a posição, as ordens se movem pelas suas linhas a cada novo candle. Quando o preço chega à nossa ordem de abertura, a posição é aberta e uma ordem de fechamento é colocada na MA base. A ordem de fechamento também se move pela sua MA até ser executada. Depois o ciclo se repete.
Configuração das linhas MA (ordens de abertura e fechamento)
Pode haver várias linhas de abertura para cada lado (ma_long, ma_short) - assim se forma uma grade de ordens com aumento de posição (MultiMA).
Há uma linha de fechamento para cada lado (ma_close_long, ma_close_short) - a posição inteira é fechada com uma ordem.
- id - número de ordem da linha, sem repetições
- type - tipo de média móvel
SMA, EMA, GMA, HARMONIC, TEMA, DEMA, ZLEMA, WMA, VWMA, RMA, EHMA, THMA, HMA, DMA, ATR, H, L - source - fonte do preço
open, high, low, close, hl2, hlc3, ohlc4, hlcc4, oc2 - len - comprimento da MA
- multiplier - deslocamento. 1 significa sem deslocamento, 0.99 significa -1%, 1.01 significa +1%
- lot_x - multiplicador do lote: tamanho da ordem = lote base * lot_x. Não é usado na ordem de fechamento
- order_type -
limitoumarket. A ordem a mercado é enviada quando o preço chega à linha - post_only - ordem limite somente como maker
- hidden - ordem limite oculta (só BitMEX)
Configuração do lote. Nas configurações básicas defina balance_percentage = 100 e risk = 1. Então lot_x = 1 - ordem de 100% do saldo, 0.5 - de 50%, 1.5 - de 150%.
Parâmetros da estratégia
entry_on_close- para ordens de abertura a mercado: verificar a condição de entrada pelo preço de fechamento do último candle, e não pelo preço atualtrade_offset- para ordens de abertura a mercado: usar o valor da MA de N candles atrásreverse_mode- para ordens de abertura a mercado: entrar não quando o preço cruza a linha, mas quando o preço está acima da linha (para compra) ou abaixo dela (para venda), a no máximo 1% delarecalculate- recalcular o tamanho das ordens a cada atualização, mesmo que a posição já esteja abertaclose_on_signal- a partir do segundo candle após a entrada, fechar a posição com ordem a mercado assim que o preço tocar a linha de fechamentoclose_on_wrong_side- se o preço passou da linha de fechamento em mais de 0.5% e a ordem limite não foi executada, fechar a posição com ordem a mercadoemergency_stop- parada de emergência: se a linha de abertura ficou do outro lado da linha de fechamento (as linhas se cruzaram), o bot cancela todas as ordens e fecha a posiçãonotification_trade_report- relatório no Telegram para cada operação fechada: preço médio de entrada, preço de saída e resultado em %position_priority- prioridade da posição para o limitador de posições (veja abaixo)
Limitador de posições
O limitador é definido para a chave de API com o parâmetro "open_positions_limiter": 64 no arquivo da chave na pasta settings_account. Padrão 0 - desligado.
Participam do limitador apenas os bots MRS cujo position_priority não é 0.
position_priorityde 1 a 5. 5 é a menor prioridade, essa posição fecha primeiro- Se houver tantas posições abertas quanto o definido no limitador, as ordens de abertura são canceladas nos pares sem posição - novas posições não são abertas
- Se abrirem mais posições que o limite (por exemplo, ao mesmo tempo), as excedentes são fechadas: primeiro as de prioridade 5, depois 4, 3, 2, 1. Com prioridade igual - uma aleatória
- Posições com prioridade 0 não são contadas nem fechadas pelo limitador
Na interface o limitador aparece assim: [100 | (4/64)] - 100 bots nesta API, 4 posições abertas, limite 64.
O mesmo parâmetro open_positions_limiter também limita as estratégias HiDeep, RedFlag, SmartProfit e ShadowOverlap: quando há tantas posições abertas nelas quanto o limite, os bots sem posição não abrem novas operações. Prioridades não são usadas para elas.
ColorBox - fechamento no N-ésimo candle
Uma opção de fechamento que transforma o MRS em ColorBox: a posição fecha no fechamento do N-ésimo candle após a entrada. É possível adicionar uma condição de cor do candle, por exemplo fechar após o 2º candle verde. Configurado separadamente para long e short. Detalhes na seção "Fechamento da posição e opções gerais".
Backtest
Testar no backtester embutido
Script (PineScript) para testar a estratégia em dados históricos no testador de estratégias do TradingView. A estratégia é popular e você pode encontrar muitas variações com nomes diferentes.
-
Links:
- Versão simples da estratégia com o mínimo de configurações. Recomendo começar a conhecer a estratégia por este script.
- Script com um grande conjunto de parâmetros que podem ser reproduzidos no bot.
- Script que permite colocar várias ordens de abertura (aumentando a posição | preço médio).
Recomendações:
(não são rígidas e podem ser quebradas para fins de pesquisa)
● A ordem limite limita a capacidade da estratégia. Em instrumentos de baixa liquidez o resultado no testador será superestimado.
● No spot teste só long. Long e short ao mesmo tempo é para usuários experientes.
● Em futuros, uma estratégia contra-tendência tem risco de liquidação.
● Timeframe típico - 1h. Pares altcoin/bitcoin ou altcoin/altcoin.
MRS2, MRS2 FAST
Uma versão do MRS com linhas de fechamento separadas para long e short e um conjunto de filtros que cancelam as ordens em momentos perigosos. Uma linha de abertura por lado, sem aumento de posição.
Tipo de ordem usado: Limite. As ordens de abertura e de fechamento se movem pelas suas próprias linhas.
Por padrão o bot não opera se a linha de abertura ficar do outro lado da linha de fechamento (por exemplo, a linha de compra acima da linha de fechamento do long) - nesse caso a operação já nasce com prejuízo.
Parâmetros
ma_long,ma_short,ma_close_long,ma_close_short- linhas de abertura e de fechamento. Configuradas como as linhas do MRSuse_settings_from_open_long,use_settings_from_open_short- construir a linha de fechamento com o tipo, a fonte e o comprimento da MA de abertura (o deslocamento vem da linha de fechamento)distance_filter- distância mínima em % entre a linha de abertura e a de fechamento (padrão 0.3). Se estiverem mais perto, as ordens são canceladas (lucro potencial pequeno demais)filter_pump_1- filtro pós-pump. Quando o preço (source) cruza a linha de fechamento para cima, o nível dessa linhaoffsetcandles atrás é memorizado. Enquanto a linha de compra estiver acima desse nível, o bot não comprafilter_pump_2- filtro de alta brusca. Se nos últimoscountcandles a máxima forvaluevezes maior que a mínima e a máxima vier depois da mínima, a negociação é pausadafilter_close_position- quando um filtro dispara, além de cancelar as ordens, fechar a posição abertaunconditional_placement- colocar ordens sempre, sem verificar a posição relativa das linhasallow_close_by_market_order- se o candle inteiro passou acima da linha de fechamento e a ordem limite não foi executada, fechar a posição com ordem a mercadoonly_profit- não mover a ordem de fechamento abaixo do preço de entrada (para long) - fechamento só com lucroreplace_open_order- com posição aberta, o tamanho da ordem de abertura é reduzido pelo tamanho da posiçãocancel_if_half_filled- se a ordem de abertura foi executada parcialmente e a parte restante é menor que o dobro da posição, ela é cancelada
MRS2 FAST (mrs2fast) - a mesma lógica e as mesmas configurações (bloco mrs2), mas em um ciclo o bot executa de uma vez todas as ações necessárias com as ordens (atualizar a de fechamento, reposicionar a de abertura etc.), em vez de uma ação por ciclo. As ordens acompanham as linhas das MAs mais rápido - útil em timeframes menores e com muitos bots.
MRS3
A união de MRS e MRS2: várias linhas de abertura para cada lado (uma grade de ordens com aumento de posição, como MultiMA no MRS) e o conjunto de proteções do MRS2.
Tipo de ordem usado: Limite. Cada ordem de abertura se move pela sua própria linha, a de fechamento pela linha de fechamento.
Parâmetros
ma_long,ma_short- listas de linhas de abertura. Configuradas como no MRS (id, type, source, len, multiplier, lot_x, order_type, post_only, hidden)ma_close_long,ma_close_short- uma linha de fechamento por ladodistance_filter,filter_close_position,unconditional_placement,allow_close_by_market_order,only_profit- como no MRS2replace_open_order- com posição aberta, a posição é distribuída pelos níveis da grade a partir do mais próximo do preço: níveis executados não são recolocados, um nível parcialmente executado recebe o restante, os intocados recebem o lote completouse_id_tracking- acompanhar as ordens da grade por ID (no máximo uma requisição à corretora por ciclo). Útil quando a corretora limita a frequência de requisiçõesnotification- relatório no Telegram para cada operação fechada: preço de entrada, preço de saída e resultado em %
HD, HiDeep
Esta estratégia surgiu depois de muito pensar em como melhorar a estratégia de reversão à média | MRS | Envelope, e essas melhorias deram origem a uma estratégia separada.
Principais diferenças fundamentais em relação ao MRS:
● funciona apenas com ordens a mercado. O preço da compra/venda não é conhecido antecipadamente, por isso não é possível colocar nada antes
● todas as ações acontecem no momento do fechamento do candle. Isso resulta em uma lógica muito simples e robusta, que faz um backtest muito bom até em testadores de estratégias primitivos
● uma consequência não óbvia do item acima - uma sobrevivência muito melhor da estratégia em movimentos bruscos dentro de um único candle. Nada acontece dentro do candle, mesmo que ele faça um movimento de 80% no preço.
● a estratégia usa a lógica do MRS como uma das condições (filtro) para disparar a ordem.
● número ilimitado de aumentos de posição.
É uma estratégia contra-tendência que procura momentos de sobrevenda local e abre compras nas correções para baixo, contando com um repique em seguida.
Ela combina:
● filtragem das entradas por média móvel (como na estratégia acima - Reversão à média | MRS)
● análise do desvio do preço em relação à média
● um modelo simples de sobrevenda (parecido com o RSI). O preço cai mais rápido que o normal.
● saída por sinais de recuperação do preço (condições espelhadas às da compra)
A estratégia tenta pegar a situação em que:
● O preço caiu bruscamente
● O movimento parece "sobrecarregado" (forte demais em relação ao normal)
● Há sinais de sobrevenda de curto prazo
Nesses momentos ela supõe que o mercado exagerou temporariamente para baixo e pode repicar.

Exemplo de uma variação da estratégia HiDeep no gráfico acima.
Entrada em Long e aumentos de posição seguintes nos candles que estão:
● abaixo da linha MA de gatilho verde deslocada para baixo
● marcados com um triângulo verde ▲
Fechamento da posição quando o High toca a linha MA vermelha. (ação no fechamento do candle)
A linha azul mostra o preço médio de compra.
⚠️ Em uma queda prolongada sem repique, a posição cresce com os aumentos e a perda aumenta. Limite o número de aumentos de posição e o tamanho do lote.
Como o sinal é determinado (triângulo verde/vermelho)
O sinal de compra (verde ▲) aparece em um candle que ao mesmo tempo:
● é vermelho (fechou abaixo da abertura)
● tem o corpo abaixo do corpo do candle anterior
● tem desvio do preço de fechamento em relação à SMA maior que o desvio médio dos últimos candles (movimento "sobrecarregado")
● tem RSI rápido abaixo de 10 (forte sobrevenda de curto prazo)
O sinal de venda (vermelho ▼) é espelhado: candle verde, corpo acima do anterior, forte desvio para cima, RSI rápido acima de 90.
Os sinais são calculados por dois conjuntos de configurações independentes, e qualquer um deles dispara. Além disso, o preço de fechamento deve estar abaixo da linha MA low (para compra) ou acima de MA high (para venda).
Parâmetros
Linhas MA
ma_low_*,ma_high_*- tipo, comprimento e fonte das linhas do filtro de entrada. É possível usar ATR em vez de MAma_low_1,ma_high_1- deslocamento das linhas do filtro. 0.995 - 0.5% abaixo, 1.011 - 1.1% acimama_high_trigger_*,ma_low_trigger_*- linhas de gatilho de fechamento: long fecha quando o High do candle está acima dema_high_trigger, short quando o Low está abaixo dema_low_trigger
Sinal
up_1,dn_1,mac_1,sma_1,sma_up_1,sma_dn_1- primeiro conjunto: comprimento do RSI rápido para cima/baixo, comprimento da SMA para o desvio, comprimento da média do desvio, multiplicadores do limiteup_2...sma_dn_2- segundo conjunto com os mesmos parâmetros
Aumentos de posição e fechamento
count_max_long,count_max_short- número máximo de entradas na posição, incluindo a primeira (padrão 5)entry_gap- passo mínimo do aumento de posição: a próxima compra só se o preço estiver abaixo do preço da compra anterior *entry_gap. Por exemplo 0.98 - não mais perto que 2%. 0 - sem limiteonly_profit,min_profit- fechar pela linha de gatilho só com lucro.min_profit- multiplicador do preço de entrada, por exemplo 1.01 - lucro de pelo menos 1%allow_reduce- fechar a posição pelo sinal oposto (para long - pelo vermelho ▼)reduce_ma_1- fechar pelo sinal oposto só se o preço estiver além da linha MA opostaallow_reverse- no sinal oposto, inverter a posição em vez de só fechar
Modos
use_pdd- modo invertido: compra por sinal de sobrecompra acima da linhaMA high, venda por sinal de sobrevenda abaixo deMA low. A estratégia passa a ser de impulsodisable_trade_on_reverse_trend- com o filtro de tendência ativado, não abrir operações no candle em que a tendência mudouuse_auto_size_hedge,auto_size_hedge_ratio- tamanho automático para hedge. O tamanho da entrada depende do tamanho total das posições de tendência de outros bots nesta conta: quanto mais shorts de tendência, maior a compra do HiDeep, e vice-versadelay- pausa entre verificações em ms (no mínimo 3000)
O bot só começa a operar quando há candles suficientes carregados para calcular os indicadores. Com o filtro de tendência ativado, são necessários pelo menos 500 candles.
Backtest
Testar no backtester embutido
Scripts (PineScript) para testar a estratégia em dados históricos no testador de estratégias do TradingView. O script hamster-bot-HiDeep contém três variantes diferentes da estratégia - a desejada é escolhida por um preset nas configurações.
RedFlag
Estratégia simples de compra em uma queda brusca. Funciona só em long.
O bot acompanha o candle atual. Se o candle é vermelho e o preço caiu o % definido em relação ao preço do candle anterior (open, high, low ou close, à escolha), o bot compra imediatamente com ordem a mercado, sem esperar o fechamento do candle. Se a queda continuar, ele aumenta a posição.
Tipo de ordem usado: A mercado (entrada) e Limite (take-profit).
⚠️ Em uma queda prolongada sem repique, os aumentos de posição aumentam a perda. Limite o número de entradas.
Parâmetros
drop_percent- quantos % o preço deve cair para a entrada (padrão 10%)from- de qual preço do candle anterior medir a queda:open,high,low,closecount- número máximo de entradas, incluindo a primeiratimer- pausa mínima entre entradas em minutos. 0 - sem pausaeach_tp- cada entrada recebe seu próprio take-profit limite atake_profit_long% do preço dessa entrada. Sem esta opção há um único take-profit para toda a posição
SmartProfit
Estratégia de preço médio (DCA) só em long. O bot compra com ordem a mercado, coloca imediatamente uma grade de ordens limite de aumento de posição abaixo do preço de entrada e um take-profit limite a partir do preço médio da posição. Depois do fechamento pelo take, o ciclo se repete.
As entradas podem ser limitadas por filtros: comprar só quando o preço estiver abaixo de uma linha de Bollinger escolhida, abaixo de uma MA ou abaixo de um preço máximo definido. Funciona também no spot - o preço médio de entrada é calculado pelo bot com base nas ordens executadas.
Tipo de ordem usado: A mercado (primeira entrada) e Limite (aumentos de posição e take-profit).
⚠️ Em uma queda prolongada abaixo de toda a grade, a posição fica no prejuízo. Ajuste o tamanho da grade e o martingale ao seu depósito.
Parâmetros
take_profit- take-profit em % do preço médio da posição (padrão 2)averaging- níveis de aumento de posição em % abaixo do preço da primeira entrada, separados por ponto e vírgula (padrão3;6;9)martingale- multiplicador do lote para cada aumento seguinte (padrão 1 - todas as ordens do mesmo tamanho)filter_bb- filtro por Bandas de Bollinger:use,len,type,source,std_dev,condition- abaixo de qual linha o preço deve estar:upper,basisoulowerfilter_ma- filtro por MA:use,type,len,source,multiplier. Compra só quando o preço estiver abaixo de MA *multiplierfilter_max_price- não comprar acima deste preço. 0 - desligadoonly_exit- modo de saída: novos ciclos não são abertos, o bot só fecha a posição atualtrade_on_exit_bar- permitir uma nova entrada no mesmo candle em que a posição anterior foi fechada (ativado por padrão)
ShadowOverlap
Estratégia de repique em um pavio longo do candle. Se o candle tem um pavio superior longo, um nível para short é construído em uma parte definida desse pavio. Quando, alguns dias depois, o preço volta a esse nível, o bot abre short esperando um novo repique. Para long - espelhado pelo pavio inferior.
Saída em partes: dois takes parciais e um take final, além de stop-loss e movimentação do stop para o breakeven.
Tipo de ordem usado: A mercado ou Limite (entrada), Limite (takes) e Stop (stop-loss).
Parâmetros
As configurações são definidas separadamente nos blocos short e long:
percent_input- comprimento mínimo do pavio em % do preço da borda do corpo do candle (padrão 5)wick_level_percent- em que parte do pavio é construído o nível de entrada: 0% - borda do corpo, 100% - ponta do pavio (padrão 90)size_candle- entrar só se a distância entre o nível e o preço atual for maior que o % definido (padrão 7)days_to_wait- quantos dias devem passar após o surgimento do nível antes que ele possa ser operado (padrão 1)use_new_filter,wick_level_percent2- operar só um nível "novo": se o preço já chegou ao nível dewick_level_percent2% do pavio (padrão 20), o nível é considerado já trabalhadotp1_dist,tp1_qty- primeiro take: distância em % do preço de entrada e parte da posição em % (padrão 4% e 70%)tp2_dist,tp2_qty- segundo take (padrão 6% e 15%)tp3_dist- take final para o restante da posição (padrão 9%)sl_dist- stop-loss em % do preço de entrada (padrão 18)no_loss_trigger,no_loss_value- breakeven: quando o lucro chega ano_loss_trigger%, o stop é movido para o lucro em (no_loss_trigger-no_loss_value) %. 0 - desligado
Configurações gerais:
use_market- entrar com ordem a mercado quando o preço chega ao nível (padrão). Se desligado, uma ordem limite no nível é colocada antes, quando o preço se aproxima a menos desize_candle%notify_only- modo de sinais: o bot não opera, apenas envia notificações de entradas e saídas ao Telegram
TV MAPM
Estratégia no cruzamento de duas linhas de sinal do MACD, com aumento de posição e take-profit. O MACD é calculado como a diferença entre a EMA 8 e a EMA 49, e a partir dele são construídas as linhas de sinal rápida e lenta. A rápida cruzou a lenta para cima - compra, para baixo - venda.
Após a entrada, é colocado um take-profit limite a partir do preço médio da posição e uma ordem limite de aumento de posição com um passo a partir do preço da primeira entrada.
Cada aumento seguinte é lot_x vezes maior que o anterior.
Tipo de ordem usado: A mercado (entrada) e Limite (aumentos de posição e take-profit).
Parâmetros
fast_len,slow_len- comprimentos das linhas de sinal rápida e lenta (padrão 300 e 600)averaging_step- passo dos aumentos de posição em % do preço da primeira entrada (padrão 2.5)max_entry_count- número máximo de entradas, incluindo a primeira (padrão 3)lot_x- multiplicador do lote para cada aumento seguinte (padrão 1)tp_long,tp_short- take-profit em % do preço médio da posição (padrão 10)
MZ
Estratégia de entrada na correção após um impulso. O bot memoriza a mínima local (para long) e constrói a partir dela níveis em frações definidas do tamanho do canal channel_size.
Quando um candle fecha acima do nível de gatilho (impulso confirmado), é colocada uma ordem limite de compra na correção, com take-profit acima e stop-loss logo acima da mínima local.
Para short - espelhado a partir da máxima local.
Opera em uma só direção: se long estiver ativado nas configurações básicas - só long, caso contrário só short. Após uma operação com perda, o lote da próxima pode ser aumentado (martingale).
⚠️ O martingale aumenta rapidamente o risco em uma sequência de perdas.
Parâmetros
channel_size- tamanho do canal em unidades de preço (padrão 10000 - ajuste ao preço da moeda)mul_trigger- nível de gatilho: fração do canal a partir da mínima local (padrão 0.1)mul_limit_1- nível da ordem limite de entrada (padrão 0.05)mul_tp_1- nível do take-profit (padrão 0.5)mul_control- nível de controle: se o preço chegou até ele e voltou ao nível de entrada, a posição é fechada (padrão 0.25)mul_sl- stop-loss: distância da mínima local em fração do preço (padrão 0.001 = 0.1%)martingale- multiplicador do lote após uma operação com perda (padrão 1 - desligado)
Trading por sinais do TradingView:
TradingView | Alerts | Webhook
Se a sua estratégia não está na lista, mas existe no TradingView, o bot pode operar pelos alertas dela. O bot recebe o sinal via webhook e abre ou fecha a posição na corretora.
A diferença em relação às estratégias acima: o bot não calcula os sinais sozinho, ele executa o que o TradingView envia. A velocidade de reação depende da entrega do alerta.
Instrução detalhada de configuração dos alertas: Alertas do TradingView
Webhook (sinais para várias moedas)
Modo para um screener externo ou seu próprio serviço de sinais: um único bot opera todas as moedas em USDT da conta ao mesmo tempo.
O sinal chega como requisição POST para o endereço /w do bot, em JSON com os campos secret (link secreto do bot), symbol (moeda, por exemplo BTC) e side (buy ou sell).
O bot abre a posição com ordem a mercado.
link- segredo que deve chegar no camposecret. Gerado automaticamentemax_positions- número máximo de posições abertas ao mesmo tempo (padrão 10). Um novo sinal não é executado para uma moeda que já tem posiçãoallow_trade_minutes- após uma operação na moeda, novos sinais para ela são ignorados por esse número de minutos (padrão 10)ignore_tp_sl_price- não reposicionar take-profit e stop-loss já colocados se o preço calculado deles mudouskip_leverage_set- não definir a alavancagem na corretora antes da entrada
Outros modos:
Volume Market (geração de volume de trading)
Modo para gerar volume de trading (por exemplo, para o nível VIP da corretora ou condições de uma promoção). O bot abre alternadamente long e short com ordem a mercado e fecha a posição no candle seguinte. O status do bot mostra o volume gerado no dia, no mês e no total.
⚠️ Cada operação paga a taxa da corretora e o spread. Use em pares líquidos e leve as taxas em conta.
Parâmetros
delay_bars- pausa em candles entre o fechamento da posição e a próxima entrada (padrão 0)use_smart_close- fechamento inteligente: ativa os parâmetros abaixotp_pct,sl_pct- fechar antes com lucro ou perda em % do preço de entrada. 0 - desligadomax_daily_loss_pct- parar de operar até o fim do dia (UTC) se o saldo cair mais que o % definido do saldo do início do dia. 0 - desligadothreshold_profit- limite de lucro. 1 - desligado. Acima de 1 (por exemplo 1.01) - fechar só com lucro de pelo menos 1%. Abaixo de 1 (por exemplo 0.98) - não fechar se a perda for maior que 2%
Long/Short-bot (em fase experimental)
Entrada com ordem limite a partir do meio do canal do preço de fechamento de n candles, com deslocamento de m desvios padrão; take-profit mais K desvios padrão adiante.
Se a ordem de entrada não for executada em auto_cancel candles, os níveis são recalculados.
n- comprimento do canal e do desvio padrão (padrão 30)m- deslocamento da entrada em desvios padrão (padrão 0)K- distância até o take-profit em desvios padrão (padrão 2)auto_cancel- após quantos candles recalcular uma ordem não executada (padrão 100)
Close Position Delete Orders
Modo de serviço: o bot fecha a posição aberta no par com uma ordem a mercado e cancela todas as ordens. Prático para sair rapidamente de um par sem excluir o bot.
Modo Off - o bot não faz nada com a posição e as ordens.
Fechamento da posição e opções gerais:
Essas opções são ativadas no bloco options das configurações do bot e funcionam com qualquer estratégia. Você pode ativar várias ao mesmo tempo - dispara a condição que ocorrer primeiro.
Take-profit e stop-loss
take_profit_long,take_profit_short- take-profit em % do preço de entrada. Colocado como ordem limite. 0 - desligado. Não é usado em MRS, MRS2, MRS2 FAST, MRS3, Donchian Channel, SmartProfit, ShadowOverlap e RedFlag comeach_tp- eles têm saída própriastop_loss_long,stop_loss_short- stop-loss em % do preço de entrada. 0 - desligadosl_by_order- colocar o stop-loss como ordem stop na corretora. Sem esta opção o bot acompanha o preço e fecha a posição com ordem a mercadomarket_tp_long,market_tp_short- take-profit a mercado: o bot fecha a posição quando o lucro chega amarket_tp_*_value%. Nenhuma ordem é colocada antes, então ela não aparece no livro de ofertas
Stop com gatilho (breakeven)
Quando o lucro chega a stop_trigger_trigger_long %, o stop é ativado. Se depois disso o preço recuar stop_trigger_value_long % a partir do ponto de ativação, a posição é fechada.
Exemplo: gatilho 3%, stop 2%. O preço subiu 3% desde a entrada - o stop está ativo. Se o preço recuar 2% a partir desse ponto, a posição fecha com cerca de +1%.
Se os valores forem iguais, isso move o stop para o breakeven. Para short use os parâmetros stop_trigger_*_short.
Trailing stop por MA
A posição é fechada quando o preço toca a média móvel. Para long a linha normalmente fica abaixo do preço, para short acima.
ma_ts_len_long,ma_ts_type_long,ma_ts_source_long,ma_ts_multiplier_long- comprimento, tipo, fonte e deslocamento da MA para long. Comprimento 0 - desligadoma_ts_*_short- o mesmo para short
Take-profit por MA
O oposto do trailing stop: long fecha quando o preço sobe até a linha da MA, short quando desce até ela. É possível usar ATR em vez de MA.
ma_tp_long- ativar para long.ma_tp_long_type,ma_tp_long_len,ma_tp_long_source,ma_tp_long_multiplier- configurações da linhama_tp_shortema_tp_short_*- o mesmo para short
Fechamento no cruzamento de MAs
A posição é fechada no cruzamento da MA rápida com a lenta, se até esse momento houver o lucro necessário ou a perda tiver atingido o stop.
ma_crossing- ativar.ma_crossing_by_crosing- fechar exatamente no momento do cruzamentoma_crossing_fast_*,ma_crossing_slow_*- tipo, comprimento e fonte da MA rápida e da lentama_crossing_min_profit- lucro mínimo em % para fecharma_crossing_stop_loss- perda em % na qual a posição fecha no cruzamento mesmo sem lucro. 0 - não usarma_crossing_skip- quantos candles após a entrada não verificar o cruzamento
Fechamento no N-ésimo candle (ColorBox)
A posição é fechada no fechamento do N-ésimo candle após a entrada. É possível adicionar uma condição de cor: por exemplo, fechar long após o 2º candle verde.
use_close_candle_long- ativar para longclose_candle_count_long- número do candle após a entradaclose_candle_color_long- cor do candle:green,redou vazio - qualquer cor*_short- o mesmo para short
Fechamento por sinal HiDeep
Os sinais do HiDeep podem ser usados como saída em qualquer estratégia. Long fecha com sinal de sobrecompra (vermelho ▼), short com sinal de sobrevenda (verde ▲), se o lucro for de pelo menos hd_close_min_profit %.
hd_close- ativarhd_close_min_profit- lucro mínimo em % (padrão 0.5)- O sinal é calculado com as configurações do bloco
hd
Filtro de tendência
Filtro baseado em ATR (parecido com o indicador SuperTrend). Ele determina a tendência atual e permite operações apenas na direção dela: só long em tendência de alta, só short em tendência de baixa.
Usado nas estratégias ZZ, HiDeep e MACD Trend (com use_trend_filter).
trend- ativar o filtrotrend_power- comprimento do ATRtrend_resistance- multiplicador do ATR. Quanto maior, menos vezes a tendência muda
Fechamento por tempo
Bloco time_close: a posição é fechada com ordem a mercado após um número definido de candles depois da entrada ou em um dia definido.
enabled- ativarbars_count- fechar N candles após a entrada. 0 - desligadouse_day_of_month,day_of_month- fechar em um dia definido do mês (1-31). Tem prioridade sobrebars_countuse_day_of_week,day_of_week- fechar em um dia definido da semana: 0 - domingo, 1 - segunda-feira ... 6 - sábado. Tem prioridade sobre os outros modostime_of_day- para os modos por dia: não antes do horário UTC definido no formatoHH:mm. Vazio - em qualquer horário do diaprofit_threshold- condição de lucro. 1 - desligado. 1.25 - fechar só se o lucro for de pelo menos 25%. 0.5 - fechar só se a perda não passar de 50%
Pausa após perda ou lucro
O bot para após fechar uma operação com perda ou lucro: cancela as ordens e não opera mais até ser iniciado novamente. Uma notificação é enviada ao Telegram.
pause_trading_after_loss,loss_size- parar após uma operação com perda. Seloss_sizefor maior que 0 - só quando a perda for de pelo menos o % definidopause_trading_after_profit,profit_size- parar após uma operação com lucro. Seprofit_sizefor maior que 0 - só quando o lucro for de pelo menos o % definido
Fechamento pela margem da conta
Configuração da chave de API (bloco close_by_margin), e não de um bot individual. Quando o saldo total da conta, incluindo o lucro não realizado, cresce em relação ao saldo da carteira até o nível definido,
todos os bots dessa chave reduzem suas posições. Assim é possível realizar o lucro geral de todos os pares de uma vez.
profit- limite: 1.05 - fechar quando o saldo de margem for 5% maior que o saldo da carteira. 1 - desligadosize- que parte das posições fechar: 1 - 100%, 0.5 - metadeeach- calcular o lucro não realizado pelas posições dos bots em vez de pegar o saldo de margem da corretora
Modo "como no TradingView"
like_tv - as condições de fechamento são verificadas pelo High/Low do candle fechado, como faz o testador de estratégias do TradingView, e não pelo preço atual.
Ajuda a obter no mercado real um resultado próximo ao backtest do TradingView.