MAGALHAES NEOWAVE ONDA 3 PRO//@version=6
indicator(
title="MAGALHAES NEOWAVE ONDA 3 PRO",
shorttitle="NEOWAVE O3 PRO",
overlay=true,
max_lines_count=500,
max_labels_count=500
)
//==================================================
// 1. MOTOR DA ESTRUTURA
//==================================================
grupoMotor = "1. Motor da Estrutura"
inicioLeitura = input.time(
defval=timestamp("01 Jan 2024 00:00 +0000"),
title="Iniciar/Reiniciar leitura em",
confirm=true,
group=grupoMotor
)
forcaPivot = input.int(
defval=5,
title="Força do pivô",
minval=2,
maxval=30,
group=grupoMotor
)
hipoteseCorrecao = input.string(
defval="Onda 2",
title="Correção analisada",
options= ,
group=grupoMotor
)
retracaoMinima = input.float(
defval=0.236,
title="Retração mínima para validar",
minval=0.05,
maxval=1.00,
step=0.001,
group=grupoMotor
)
fibIdealMinimo = input.float(
defval=0.382,
title="Início da região Fibonacci válida",
minval=0.05,
maxval=1.00,
step=0.001,
group=grupoMotor
)
fibIdealMaximo = input.float(
defval=0.886,
title="Fim da região Fibonacci válida",
minval=0.05,
maxval=1.50,
step=0.001,
group=grupoMotor
)
invalidarEm100 = input.bool(
defval=true,
title="Invalidar se fechar além de 100%",
group=grupoMotor
)
scoreMinimo = input.int(
defval=80,
title="Índice mínimo de confirmação",
minval=40,
maxval=100,
step=20,
group=grupoMotor
)
//==================================================
// 2. TEMPO NEOWAVE
//==================================================
grupoTempo = "2. Tempo NeoWave"
relacaoMinimaTempo = input.float(
defval=1.00,
title="Tempo mínimo da correção",
minval=0.10,
maxval=5.00,
step=0.05,
group=grupoTempo
)
relacaoIdealInicio = input.float(
defval=1.50,
title="Início da janela temporal ideal",
minval=0.20,
maxval=6.00,
step=0.05,
group=grupoTempo
)
relacaoIdealFim = input.float(
defval=2.00,
title="Fim da janela temporal ideal",
minval=0.30,
maxval=8.00,
step=0.05,
group=grupoTempo
)
//==================================================
// 3. VISUALIZAÇÃO
//==================================================
grupoVisual = "3. Visualização"
mostrarPainel = input.bool(true, "Mostrar painel", group=grupoVisual)
mostrarBase = input.bool(true, "Mostrar movimento direcional", group=grupoVisual)
mostrarCorrecao = input.bool(true, "Mostrar correção", group=grupoVisual)
mostrarFibonacci = input.bool(true, "Mostrar Fibonacci", group=grupoVisual)
mostrarAlvos = input.bool(true, "Mostrar alvos", group=grupoVisual)
mostrarSinal = input.bool(true, "Mostrar sinal da próxima onda", group=grupoVisual)
mostrarFundo = input.bool(false, "Colorir fundo temporal", group=grupoVisual)
//==================================================
// 4. NÍVEIS
//==================================================
grupoNiveis = "4. Níveis"
usar236 = input.bool(true, "23,6%", group=grupoNiveis)
usar382 = input.bool(true, "38,2%", group=grupoNiveis)
usar500 = input.bool(true, "50,0%", group=grupoNiveis)
usar618 = input.bool(true, "61,8%", group=grupoNiveis)
usar705 = input.bool(true, "70,5%", group=grupoNiveis)
usar786 = input.bool(true, "78,6%", group=grupoNiveis)
usar810 = input.bool(true, "81,0%", group=grupoNiveis)
usar854 = input.bool(true, "85,4%", group=grupoNiveis)
usar886 = input.bool(true, "88,6%", group=grupoNiveis)
usar100 = input.bool(true, "100,0%", group=grupoNiveis)
//==================================================
// 5. CORES
//==================================================
grupoCores = "5. Cores"
corAlta = input.color(color.lime, "Direcional de alta", group=grupoCores)
corBaixa = input.color(color.red, "Direcional de baixa", group=grupoCores)
corCorrecao = input.color(color.orange, "Correção", group=grupoCores)
corFibo = input.color(color.aqua, "Fibonacci", group=grupoCores)
corIdeal = input.color(color.yellow, "Janela temporal ideal", group=grupoCores)
corConfirmacao = input.color(color.green, "Próxima onda confirmada", group=grupoCores)
corAlvo = input.color(color.fuchsia, "Alvos", group=grupoCores)
//==================================================
// 6. FUNÇÕES
//==================================================
f_tempo(float minutos) =>
string texto = "AGUARDANDO"
if not na(minutos)
int dias = int(math.floor(minutos / 1440.0))
int horas = int(math.floor((minutos % 1440.0) / 60.0))
int mins = int(math.floor(minutos % 60.0))
if dias > 0
texto := str.tostring(dias) + "d " + str.tostring(horas) + "h " + str.tostring(mins) + "m"
else if horas > 0
texto := str.tostring(horas) + "h " + str.tostring(mins) + "m"
else
texto := str.tostring(mins) + "m"
texto
f_percentual(float valor) =>
na(valor) ? "AGUARDANDO" : str.tostring(valor * 100.0, "#.##") + "%"
f_relacao(float valor) =>
na(valor) ? "AGUARDANDO" : str.tostring(valor, "#.##") + "x"
f_preco(float valor) =>
na(valor) ? "-" : str.tostring(valor, format.mintick)
f_simNao(bool condicao) =>
condicao ? "SIM" : "NÃO"
f_nivelRetracao(float inicio, float fim, float percentual) =>
fim - ((fim - inicio) * percentual)
f_nomeProximaOnda(string tipoCorrecao) =>
string nome = "ONDA C"
if tipoCorrecao == "Onda 2"
nome := "ONDA 3"
else if tipoCorrecao == "Onda 4"
nome := "ONDA 5"
nome
f_direcaoTexto(int direcao) =>
string texto = "AGUARDANDO"
if direcao == 1
texto := "ALTA"
else if direcao == -1
texto := "BAIXA"
texto
//==================================================
// 7. PIVÔS CONFIRMADOS
//==================================================
float pivotTopo = ta.pivothigh(high, forcaPivot, forcaPivot)
float pivotFundo = ta.pivotlow(low, forcaPivot, forcaPivot)
float novoPivotPreco = na
int novoPivotBar = na
int novoPivotTempo = na
int novoPivotTipo = 0
if not na(pivotTopo) and na(pivotFundo)
novoPivotPreco := pivotTopo
novoPivotBar := bar_index - forcaPivot
novoPivotTempo := time
novoPivotTipo := 1
else if not na(pivotFundo) and na(pivotTopo)
novoPivotPreco := pivotFundo
novoPivotBar := bar_index - forcaPivot
novoPivotTempo := time
novoPivotTipo := -1
//==================================================
// 8. ESTADOS
//==================================================
// 0 = procurando movimento direcional
// 1 = correção ativa
// 2 = próxima onda iniciada
var int estado = 0
//==================================================
// 9. MEMÓRIA DO ÚLTIMO PIVÔ
//==================================================
var float ultimoPivotPreco = na
var int ultimoPivotBar = na
var int ultimoPivotTempo = na
var int ultimoPivotTipo = 0
//==================================================
// 10. MOVIMENTO DIRECIONAL TRAVADO
//==================================================
var float baseInicioPreco = na
var float baseFimPreco = na
var int baseInicioBar = na
var int baseFimBar = na
var int baseInicioTempo = na
var int baseFimTempo = na
var int direcaoBase = 0
var float tempoBase = na
var float amplitudeBase = na
//==================================================
// 11. CORREÇÃO
//==================================================
var float extremoCorrecao = na
var int extremoCorrecaoBar = na
var int extremoCorrecaoTempo = na
var float retracaoMaxima = na
var bool correcaoValidada = false
var int finalCorrecaoTempo = na
var int confirmacaoBar = na
var float confirmacaoPreco = na
//==================================================
// 12. OBJETOS
//==================================================
var line linhaBase = na
var line linhaCorrecao = na
var line linhaRetomada = na
var label labelInicio = na
var label labelFim = na
var label labelCorrecao = na
var label labelConfirmacao = na
var line linhasFibo = array.new_line()
var label labelsFibo = array.new_label()
var line linhasAlvo = array.new_line()
var label labelsAlvo = array.new_label()
//==================================================
// 13. LIMPEZA DOS NÍVEIS
//==================================================
f_limparFibo() =>
int totalLinhas = array.size(linhasFibo)
if totalLinhas > 0
for i = 0 to totalLinhas - 1
line.delete(array.get(linhasFibo, i))
int totalLabels = array.size(labelsFibo)
if totalLabels > 0
for i = 0 to totalLabels - 1
label.delete(array.get(labelsFibo, i))
array.clear(linhasFibo)
array.clear(labelsFibo)
f_limparAlvos() =>
int totalLinhas = array.size(linhasAlvo)
if totalLinhas > 0
for i = 0 to totalLinhas - 1
line.delete(array.get(linhasAlvo, i))
int totalLabels = array.size(labelsAlvo)
if totalLabels > 0
for i = 0 to totalLabels - 1
label.delete(array.get(labelsAlvo, i))
array.clear(linhasAlvo)
array.clear(labelsAlvo)
//==================================================
// 14. DESENHO DE FIBONACCI
//==================================================
f_desenharFibo(float precoNivel, string nome, bool habilitado) =>
if habilitado and mostrarFibonacci and not na(precoNivel) and not na(baseFimBar)
line novaLinha = line.new(
x1=baseFimBar,
y1=precoNivel,
x2=bar_index + 25,
y2=precoNivel,
xloc=xloc.bar_index,
extend=extend.right,
color=corFibo,
style=line.style_dashed,
width=1
)
label novoLabel = label.new(
x=bar_index,
y=precoNivel,
text=nome + " " + f_preco(precoNivel),
xloc=xloc.bar_index,
yloc=yloc.price,
style=label.style_label_left,
color=color.new(corFibo, 78),
textcolor=corFibo,
size=size.tiny
)
array.push(linhasFibo, novaLinha)
array.push(labelsFibo, novoLabel)
//==================================================
// 15. DESENHO DOS ALVOS
//==================================================
f_desenharAlvo(float precoAlvo, string nome) =>
if mostrarAlvos and not na(precoAlvo) and not na(confirmacaoBar)
line novaLinha = line.new(
x1=confirmacaoBar,
y1=precoAlvo,
x2=bar_index + 30,
y2=precoAlvo,
xloc=xloc.bar_index,
extend=extend.right,
color=corAlvo,
style=line.style_dotted,
width=2
)
label novoLabel = label.new(
x=bar_index,
y=precoAlvo,
text=nome + " " + f_preco(precoAlvo),
xloc=xloc.bar_index,
yloc=yloc.price,
style=label.style_label_left,
color=color.new(corAlvo, 75),
textcolor=corAlvo,
size=size.small
)
array.push(linhasAlvo, novaLinha)
array.push(labelsAlvo, novoLabel)
//==================================================
// 16. IDENTIFICAÇÃO DO MOVIMENTO DIRECIONAL
//==================================================
bool leituraAtiva = time >= inicioLeitura
if leituraAtiva and estado == 0 and novoPivotTipo != 0 and novoPivotTempo >= inicioLeitura
if na(ultimoPivotPreco)
ultimoPivotPreco := novoPivotPreco
ultimoPivotBar := novoPivotBar
ultimoPivotTempo := novoPivotTempo
ultimoPivotTipo := novoPivotTipo
else if novoPivotTipo == ultimoPivotTipo
bool pivotMaisExtremo = novoPivotTipo == 1 ? novoPivotPreco > ultimoPivotPreco : novoPivotPreco < ultimoPivotPreco
if pivotMaisExtremo
ultimoPivotPreco := novoPivotPreco
ultimoPivotBar := novoPivotBar
ultimoPivotTempo := novoPivotTempo
else
baseInicioPreco := ultimoPivotPreco
baseInicioBar := ultimoPivotBar
baseInicioTempo := ultimoPivotTempo
baseFimPreco := novoPivotPreco
baseFimBar := novoPivotBar
baseFimTempo := novoPivotTempo
direcaoBase := baseFimPreco > baseInicioPreco ? 1 : -1
tempoBase := math.abs(baseFimTempo - baseInicioTempo) / 60000.0
amplitudeBase := math.abs(baseFimPreco - baseInicioPreco)
extremoCorrecao := baseFimPreco
extremoCorrecaoBar := baseFimBar
extremoCorrecaoTempo := baseFimTempo
retracaoMaxima := 0.0
correcaoValidada := false
finalCorrecaoTempo := na
confirmacaoBar := na
confirmacaoPreco := na
estado := 1
ultimoPivotPreco := novoPivotPreco
ultimoPivotBar := novoPivotBar
ultimoPivotTempo := novoPivotTempo
ultimoPivotTipo := novoPivotTipo
//==================================================
// 17. MEDIÇÃO DA CORREÇÃO
//==================================================
float retracaoAtual = na
if estado == 1 and not na(amplitudeBase) and amplitudeBase > 0
if direcaoBase == 1
if low < extremoCorrecao
extremoCorrecao := low
extremoCorrecaoBar := bar_index
extremoCorrecaoTempo := time
retracaoAtual := math.max(0.0, (baseFimPreco - close) / amplitudeBase)
retracaoMaxima := math.max(0.0, (baseFimPreco - extremoCorrecao) / amplitudeBase)
else if direcaoBase == -1
if high > extremoCorrecao
extremoCorrecao := high
extremoCorrecaoBar := bar_index
extremoCorrecaoTempo := time
retracaoAtual := math.max(0.0, (close - baseFimPreco) / amplitudeBase)
retracaoMaxima := math.max(0.0, (extremoCorrecao - baseFimPreco) / amplitudeBase)
correcaoValidada := retracaoMaxima >= retracaoMinima
//==================================================
// 18. TEMPO DA CORREÇÃO
//==================================================
int tempoAgora = barstate.isrealtime ? timenow : time_close
float tempoCorrecao = na
if estado == 1 and not na(baseFimTempo)
tempoCorrecao := math.max(0.0, (tempoAgora - baseFimTempo) / 60000.0)
else if estado == 2
if not na(baseFimTempo) and not na(finalCorrecaoTempo)
tempoCorrecao := math.max(0.0, (finalCorrecaoTempo - baseFimTempo) / 60000.0)
float relacaoTemporal = na
if not na(tempoBase) and tempoBase > 0 and not na(tempoCorrecao)
relacaoTemporal := tempoCorrecao / tempoBase
float tempoMinimo = na
float inicioJanela = na
float fimJanela = na
if not na(tempoBase)
tempoMinimo := tempoBase * relacaoMinimaTempo
inicioJanela := tempoBase * relacaoIdealInicio
fimJanela := tempoBase * relacaoIdealFim
float faltamMinimo = na
if not na(tempoCorrecao) and not na(tempoMinimo)
if tempoCorrecao < tempoMinimo
faltamMinimo := tempoMinimo - tempoCorrecao
float faltamJanela = na
if not na(tempoCorrecao) and not na(inicioJanela)
if tempoCorrecao < inicioJanela
faltamJanela := inicioJanela - tempoCorrecao
bool tempoValido = not na(relacaoTemporal) and relacaoTemporal >= relacaoMinimaTempo
bool janelaIdeal = not na(relacaoTemporal) and relacaoTemporal >= relacaoIdealInicio and relacaoTemporal <= relacaoIdealFim
bool tempoExcedido = not na(relacaoTemporal) and relacaoTemporal > relacaoIdealFim
bool fibValida = not na(retracaoMaxima) and retracaoMaxima >= fibIdealMinimo and retracaoMaxima <= fibIdealMaximo
//==================================================
// 19. INVALIDAÇÃO
//==================================================
bool estruturaInvalidada = false
if estado == 1 and invalidarEm100 and not na(baseInicioPreco)
if direcaoBase == 1
estruturaInvalidada := close <= baseInicioPreco
else if direcaoBase == -1
estruturaInvalidada := close >= baseInicioPreco
if estruturaInvalidada
estado := 0
ultimoPivotPreco := na
ultimoPivotBar := na
ultimoPivotTempo := na
ultimoPivotTipo := 0
baseInicioPreco := na
baseFimPreco := na
baseInicioBar := na
baseFimBar := na
baseInicioTempo := na
baseFimTempo := na
direcaoBase := 0
tempoBase := na
amplitudeBase := na
extremoCorrecao := na
extremoCorrecaoBar := na
extremoCorrecaoTempo := na
retracaoMaxima := na
correcaoValidada := false
finalCorrecaoTempo := na
confirmacaoBar := na
confirmacaoPreco := na
if not na(linhaBase)
line.delete(linhaBase)
if not na(linhaCorrecao)
line.delete(linhaCorrecao)
if not na(linhaRetomada)
line.delete(linhaRetomada)
linhaBase := na
linhaCorrecao := na
linhaRetomada := na
if not na(labelInicio)
label.delete(labelInicio)
if not na(labelFim)
label.delete(labelFim)
if not na(labelCorrecao)
label.delete(labelCorrecao)
if not na(labelConfirmacao)
label.delete(labelConfirmacao)
labelInicio := na
labelFim := na
labelCorrecao := na
labelConfirmacao := na
f_limparFibo()
f_limparAlvos()
//==================================================
// 20. CONFIRMAÇÃO DA PRÓXIMA ONDA
//==================================================
bool retomadaAlta = estado == 1 and direcaoBase == 1 and correcaoValidada and close > baseFimPreco
bool retomadaBaixa = estado == 1 and direcaoBase == -1 and correcaoValidada and close < baseFimPreco
bool retomadaConfirmada = barstate.isconfirmed and (retomadaAlta or retomadaBaixa)
if retomadaConfirmada
estado := 2
finalCorrecaoTempo := time_close
confirmacaoBar := bar_index
confirmacaoPreco := close
//==================================================
// 21. ÍNDICE NEOWAVE
//==================================================
int indiceNeoWave = 0
if not na(baseFimPreco)
indiceNeoWave += 20
if correcaoValidada
indiceNeoWave += 20
if tempoValido
indiceNeoWave += 20
if fibValida
indiceNeoWave += 20
if estado == 2
indiceNeoWave += 20
bool proximaOndaConfirmada = estado == 2 and indiceNeoWave >= scoreMinimo
//==================================================
// 22. TEXTOS OPERACIONAIS
//==================================================
string nomeProximaOnda = f_nomeProximaOnda(hipoteseCorrecao)
string proximaOndaDirecao = "AGUARDANDO"
if direcaoBase == 1
proximaOndaDirecao := nomeProximaOnda + " DE ALTA"
else if direcaoBase == -1
proximaOndaDirecao := nomeProximaOnda + " DE BAIXA"
string faseTexto = "PROCURANDO DIRECIONAL"
string ondaAtualTexto = "AGUARDANDO"
string estagioTexto = "AGUARDANDO"
string acaoTexto = "AGUARDAR"
string sinalTexto = "SEM SINAL"
if estado == 1
faseTexto := "CORREÇÃO ATIVA"
ondaAtualTexto := str.upper(hipoteseCorrecao)
if not correcaoValidada
estagioTexto := "CORREÇÃO NÃO VALIDADA"
acaoTexto := "AGUARDAR RETRAÇÃO MÍNIMA"
else if not tempoValido
estagioTexto := "CORREÇÃO JOVEM"
acaoTexto := "AGUARDAR MATURIDADE"
else if janelaIdeal and fibValida
estagioTexto := "JANELA DE FINAL DA " + str.upper(hipoteseCorrecao)
acaoTexto := "AGUARDAR RETOMADA DE " + f_direcaoTexto(direcaoBase)
else if tempoExcedido
estagioTexto := "CORREÇÃO COMPLEXA"
acaoTexto := "REAVALIAR CONTAGEM"
else
estagioTexto := "CORREÇÃO MADURA"
acaoTexto := "MONITORAR FINAL DA " + str.upper(hipoteseCorrecao)
else if estado == 2
faseTexto := "EXPANSÃO INICIADA"
ondaAtualTexto := proximaOndaDirecao
if proximaOndaConfirmada
estagioTexto := proximaOndaDirecao + " CONFIRMADA"
if direcaoBase == 1
sinalTexto := "SINAL DE ALTA"
acaoTexto := "ACOMPANHAR EXPANSÃO DE ALTA"
else
sinalTexto := "SINAL DE BAIXA"
acaoTexto := "ACOMPANHAR EXPANSÃO DE BAIXA"
else
estagioTexto := "RETOMADA CONFIRMADA"
acaoTexto := "ÍNDICE ABAIXO DO MÍNIMO"
//==================================================
// 23. STOP E ALVOS
//==================================================
float stopTecnico = estado == 2 ? extremoCorrecao : na
float alvo100 = na
float alvo1618 = na
float alvo2618 = na
if estado == 2 and not na(extremoCorrecao) and not na(amplitudeBase)
alvo100 := extremoCorrecao + direcaoBase * amplitudeBase
alvo1618 := extremoCorrecao + direcaoBase * amplitudeBase * 1.618
alvo2618 := extremoCorrecao + direcaoBase * amplitudeBase * 2.618
//==================================================
// 24. DESENHO DO DIRECIONAL
//==================================================
if not na(baseInicioBar) and not na(baseFimBar)
color corDirecional = direcaoBase == 1 ? corAlta : corBaixa
if mostrarBase
if na(linhaBase)
linhaBase := line.new(
x1=baseInicioBar,
y1=baseInicioPreco,
x2=baseFimBar,
y2=baseFimPreco,
xloc=xloc.bar_index,
color=corDirecional,
width=3
)
else
line.set_xy1(linhaBase, baseInicioBar, baseInicioPreco)
line.set_xy2(linhaBase, baseFimBar, baseFimPreco)
line.set_color(linhaBase, corDirecional)
if na(labelInicio)
labelInicio := label.new(
x=baseInicioBar,
y=baseInicioPreco,
text="INÍCIO DIRECIONAL",
xloc=xloc.bar_index,
yloc=yloc.price,
style=direcaoBase == 1 ? label.style_label_up : label.style_label_down,
color=corDirecional,
textcolor=color.white,
size=size.small
)
if na(labelFim)
labelFim := label.new(
x=baseFimBar,
y=baseFimPreco,
text="FIM DIRECIONAL " + f_tempo(tempoBase),
xloc=xloc.bar_index,
yloc=yloc.price,
style=direcaoBase == 1 ? label.style_label_down : label.style_label_up,
color=corDirecional,
textcolor=color.white,
size=size.small
)
//==================================================
// 25. DESENHO DA CORREÇÃO
//==================================================
if mostrarCorrecao and estado >= 1 and not na(baseFimBar) and not na(extremoCorrecaoBar)
if na(linhaCorrecao)
linhaCorrecao := line.new(
x1=baseFimBar,
y1=baseFimPreco,
x2=extremoCorrecaoBar,
y2=extremoCorrecao,
xloc=xloc.bar_index,
color=corCorrecao,
width=2
)
else
line.set_xy1(linhaCorrecao, baseFimBar, baseFimPreco)
line.set_xy2(linhaCorrecao, extremoCorrecaoBar, extremoCorrecao)
line.set_color(linhaCorrecao, corCorrecao)
string textoCorrecao = str.upper(hipoteseCorrecao) + " " + f_tempo(tempoCorrecao)
if na(labelCorrecao)
labelCorrecao := label.new(
x=extremoCorrecaoBar,
y=extremoCorrecao,
text=textoCorrecao,
xloc=xloc.bar_index,
yloc=yloc.price,
style=direcaoBase == 1 ? label.style_label_up : label.style_label_down,
color=corCorrecao,
textcolor=color.white,
size=size.small
)
else
label.set_xy(labelCorrecao, extremoCorrecaoBar, extremoCorrecao)
label.set_text(labelCorrecao, textoCorrecao)
//==================================================
// 26. SINAL DA PRÓXIMA ONDA
//==================================================
if estado == 2
if not na(confirmacaoBar)
if na(linhaRetomada)
linhaRetomada := line.new(
x1=extremoCorrecaoBar,
y1=extremoCorrecao,
x2=confirmacaoBar,
y2=confirmacaoPreco,
xloc=xloc.bar_index,
color=corConfirmacao,
width=3
)
else
line.set_xy1(linhaRetomada, extremoCorrecaoBar, extremoCorrecao)
line.set_xy2(linhaRetomada, confirmacaoBar, confirmacaoPreco)
line.set_color(linhaRetomada, corConfirmacao)
string textoConfirmacao = "RETOMADA CONFIRMADA " + str.tostring(indiceNeoWave) + "/100"
if proximaOndaConfirmada
textoConfirmacao := proximaOndaDirecao + " CONFIRMADA " + str.tostring(indiceNeoWave) + "/100"
if mostrarSinal
if na(labelConfirmacao)
labelConfirmacao := label.new(
x=confirmacaoBar,
y=direcaoBase == 1 ? low : high,
text=textoConfirmacao,
xloc=xloc.bar_index,
yloc=yloc.price,
style=direcaoBase == 1 ? label.style_label_up : label.style_label_down,
color=proximaOndaConfirmada ? corConfirmacao : color.orange,
textcolor=color.white,
size=size.normal
)
else
label.set_xy(labelConfirmacao, confirmacaoBar, direcaoBase == 1 ? low : high)
label.set_text(labelConfirmacao, textoConfirmacao)
label.set_color(labelConfirmacao, proximaOndaConfirmada ? corConfirmacao : color.orange)
//==================================================
// 27. FIBONACCI
//==================================================
if barstate.islast
f_limparFibo()
if estado >= 1 and not na(baseInicioPreco) and not na(baseFimPreco)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.236), "23,6%", usar236)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.382), "38,2%", usar382)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.500), "50,0%", usar500)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.618), "61,8%", usar618)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.705), "70,5%", usar705)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.786), "78,6%", usar786)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.810), "81,0%", usar810)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.854), "85,4%", usar854)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 0.886), "88,6%", usar886)
f_desenharFibo(f_nivelRetracao(baseInicioPreco, baseFimPreco, 1.000), "100,0%", usar100)
//==================================================
// 28. ALVOS
//==================================================
if barstate.islast
f_limparAlvos()
if proximaOndaConfirmada
f_desenharAlvo(alvo100, "ALVO 1 — 100%")
f_desenharAlvo(alvo1618, "ALVO 2 — 161,8%")
f_desenharAlvo(alvo2618, "ALVO 3 — 261,8%")
//==================================================
// 29. FUNDO
//==================================================
color corFundo = na
if mostrarFundo and estado == 1 and janelaIdeal
corFundo := color.new(corIdeal, 88)
else if mostrarFundo and proximaOndaConfirmada
corFundo := color.new(corConfirmacao, 90)
bgcolor(corFundo)
//==================================================
// 30. PAINEL
//==================================================
var table painel = table.new(position.top_right, 2, 23, border_width=1)
if mostrarPainel and barstate.islast
color corDirecao = color.gray
color corEstado = corCorrecao
if direcaoBase == 1
corDirecao := corAlta
else if direcaoBase == -1
corDirecao := corBaixa
if proximaOndaConfirmada
corEstado := corConfirmacao
else if janelaIdeal
corEstado := corIdeal
else if tempoExcedido
corEstado := color.fuchsia
string movimentoBaseTexto = "AGUARDANDO"
if direcaoBase == 1
movimentoBaseTexto := "DIRECIONAL DE ALTA"
else if direcaoBase == -1
movimentoBaseTexto := "DIRECIONAL DE BAIXA"
string textoJanela = "-"
if janelaIdeal
textoJanela := "JANELA ATIVA"
else if tempoExcedido
textoJanela := "JANELA EXCEDIDA"
else if not na(faltamJanela)
textoJanela := f_tempo(faltamJanela)
table.cell(painel, 0, 0, "MAGALHAES", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 0, "NEOWAVE ONDA 3 PRO", bgcolor=color.black, text_color=color.white)
table.cell(painel, 0, 1, "Fase", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 1, faseTexto, bgcolor=corEstado, text_color=color.white)
table.cell(painel, 0, 2, "Movimento Base", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 2, movimentoBaseTexto, bgcolor=corDirecao, text_color=color.white)
table.cell(painel, 0, 3, "Onda Atual", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 3, ondaAtualTexto, bgcolor=corEstado, text_color=color.white)
table.cell(painel, 0, 4, "Estágio", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 4, estagioTexto, bgcolor=corEstado, text_color=color.white)
table.cell(painel, 0, 5, "Tempo Direcional", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 5, f_tempo(tempoBase), bgcolor=color.gray, text_color=color.white)
table.cell(painel, 0, 6, "Tempo Correção", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 6, f_tempo(tempoCorrecao), bgcolor=color.gray, text_color=color.white)
table.cell(painel, 0, 7, "Relação Temporal", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 7, f_relacao(relacaoTemporal), bgcolor=corEstado, text_color=color.white)
table.cell(painel, 0, 8, "Tempo Mínimo", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 8, f_tempo(tempoMinimo), bgcolor=color.gray, text_color=color.white)
table.cell(painel, 0, 9, "Faltam Mínimo", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 9, not na(faltamMinimo) ? f_tempo(faltamMinimo) : "CUMPRIDO", bgcolor=tempoValido ? color.green : color.gray, text_color=color.white)
table.cell(painel, 0, 10, "Janela Ideal", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 10, f_tempo(inicioJanela) + " até " + f_tempo(fimJanela), bgcolor=color.gray, text_color=color.white)
table.cell(painel, 0, 11, "Faltam Janela", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 11, textoJanela, bgcolor=corEstado, text_color=color.white)
table.cell(painel, 0, 12, "Retração Atual", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 12, f_percentual(retracaoAtual), bgcolor=color.gray, text_color=color.white)
table.cell(painel, 0, 13, "Retração Máxima", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 13, f_percentual(retracaoMaxima), bgcolor=color.gray, text_color=color.white)
table.cell(painel, 0, 14, "Tempo Válido", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 14, f_simNao(tempoValido), bgcolor=tempoValido ? color.green : color.gray, text_color=color.white)
table.cell(painel, 0, 15, "Fib Válida", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 15, f_simNao(fibValida), bgcolor=fibValida ? color.green : color.gray, text_color=color.white)
table.cell(painel, 0, 16, "Correção Completa", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 16, estado == 2 ? "SIM" : "NÃO", bgcolor=estado == 2 ? color.green : color.gray, text_color=color.white)
table.cell(painel, 0, 17, "Rompimento", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 17, estado == 2 ? "CONFIRMADO" : "AGUARDANDO", bgcolor=estado == 2 ? color.green : color.gray, text_color=color.white)
table.cell(painel, 0, 18, "Índice NeoWave", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 18, str.tostring(indiceNeoWave) + " / 100", bgcolor=indiceNeoWave >= scoreMinimo ? color.green : color.orange, text_color=color.white)
table.cell(painel, 0, 19, "Sinal", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 19, sinalTexto, bgcolor=proximaOndaConfirmada ? corDirecao : color.gray, text_color=color.white)
table.cell(painel, 0, 20, "Stop Técnico", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 20, f_preco(stopTecnico), bgcolor=color.red, text_color=color.white)
table.cell(painel, 0, 21, "Alvos", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 21, "100%: " + f_preco(alvo100) + " 161,8%: " + f_preco(alvo1618) + " 261,8%: " + f_preco(alvo2618), bgcolor=corAlvo, text_color=color.white)
table.cell(painel, 0, 22, "Estado / Ação", bgcolor=color.black, text_color=color.white)
table.cell(painel, 1, 22, estagioTexto + " " + acaoTexto, bgcolor=corEstado, text_color=color.white)
//==================================================
// 31. ALERTAS
//==================================================
alertcondition(
correcaoValidada and not correcaoValidada ,
title="NeoWave — Correção validada",
message="A correção atingiu a retração mínima."
)
alertcondition(
tempoValido and not tempoValido ,
title="NeoWave — Tempo mínimo cumprido",
message="A correção cumpriu o tempo mínimo."
)
alertcondition(
janelaIdeal and not janelaIdeal ,
title="NeoWave — Janela temporal ativa",
message="A correção entrou na janela temporal ideal."
)
alertcondition(
retomadaConfirmada,
title="NeoWave — Retomada confirmada",
message="A correção terminou e a direção original foi retomada."
)
alertcondition(
proximaOndaConfirmada and not proximaOndaConfirmada ,
title="NeoWave — Próxima onda confirmada",
message="A próxima onda foi confirmada pelo motor NeoWave."
)
alertcondition(
estruturaInvalidada,
title="NeoWave — Estrutura invalidada",
message="A correção fechou além da origem do movimento direcional."
) אינדיקטור

YL / RL Professional Version 3 - Multi-Market Trading LevelsYL / RL Professional V3 — Multi-Market Trading Levels
I designed this simple indicator to help me implement the RocketScooter Levels in TradingView.
YL / RL Professional V3 is a customizable horizontal-level indicator designed for traders who track key reference levels across Nasdaq and S&P 500 futures.
The indicator allows users to enter separate groups of trading levels for:
MNQ and NQ
MES and ES
Levels entered for MNQ automatically display on NQ, while levels entered for MES automatically display on ES. This eliminates duplicate data entry when switching between micro and full-sized futures contracts.
Included level types
Yellow Levels
Red Levels
DD Band Levels
MHP
Dynamic MHP
HP
Dynamic HP
Bull Zone Bottom
HG
Bear Zone Top
Main features
Comma-separated entry for multiple Yellow, Red and DD Band levels
Separate Nasdaq and S&P 500 level groups
Automatic ticker detection
Shared levels between MNQ/NQ and MES/ES
Custom colors, line widths and transparency
Solid, dashed and dotted line styles
Optional price labels
Adjustable label size and placement
Duplicate-level removal
Automatic level sorting
Show or hide individual level groups
Optional touch alerts
On-chart status panel showing the active market and number of displayed levels
How it works
Enter Nasdaq levels once in the MNQ/NQ settings section. Those levels will appear automatically on both MNQ and NQ charts.
Enter S&P 500 levels once in the MES/ES settings section. Those levels will appear automatically on both MES and ES charts.
When the chart symbol changes, the indicator automatically displays the correct level set and removes levels belonging to the other market.
Supported symbols
MNQ
NQ
MES
ES
The indicator supports continuous contracts and standard dated futures contracts, provided TradingView identifies the symbol root as MNQ, NQ, MES or ES.
Alerts
Touch alerts can be enabled for Yellow Levels, Red Levels, DD Bands and named levels. To receive alerts, create a TradingView alert and select:
Any alert() function call
Important note
This indicator does not calculate or generate trading levels. All levels are entered manually by the user based on their own analysis, methodology or trading plan.
Open-source notice
This script is published as open source so traders can review, customize and improve it for their own use. Please credit the original author when sharing modified versions.
Disclaimer: This indicator is provided for informational and educational purposes only. It is not financial advice and does not guarantee trading results. אינדיקטור

PROTOS 700 StrategiesPROTOS · 700 Strategies packs a full research library into a single indicator: 616 documented trading strategies drawn from quantitative research and classic technical analysis literature (Wilder, Connors, Crabel, Kaufman, Pring, Kyle, Osler, Bai-Perron, Lo-MacKinlay...), ready to display and visually test on any chart.
How to use it
Open the indicator settings.
Pick up to 5 strategies at once from the 5 dropdown menus. Tip: type a keyword directly in the menu to filter the list ("rsi", "breakout", "ichimoku", "session"...).
The indicators each strategy is built on (EMA, Bollinger, SuperTrend, Ichimoku, Keltner, Donchian, VWAP...) are automatically drawn on the chart, one color per slot.
Arrows mark the signals: ▲ LONG below the bar, ▼ SHORT above.
The summary panel shows, for each slot: ID, name, signal state and live indicator values (handy for oscillator-based strategies such as RSI, ADX or Z-score).
Alerts
Click "Create alert" and pick a PROTOS condition: LONG/SHORT per slot or global. Detailed messages (strategy name and ID) are also sent through "Any alert() function call".
Under the hood
12 categories: trend following, mean reversion, breakout, volatility, microstructure, sessions, volume, momentum, candlesticks, statistical...
Each strategy is a precise set of conditions on indicators computed with their original formulas (Wilder RSI/ATR/ADX, population Bollinger Bands, MT5-style stochastic, UTC-based sessions).
Signals are evaluated on bar close: no repainting.
Volume-based strategies stay silent on symbols that do not provide volume data. אינדיקטור

אינדיקטור

Session Intelligence Matrix ProSession Intelligence Matrix Pro
Session Intelligence Matrix Pro is a professional institutional-style session analytics indicator designed to reveal what each major Forex trading session historically contributes to the market. Instead of simply highlighting trading sessions with colored boxes, this indicator performs statistical analysis on hundreds of previous sessions and displays the probability, behavior, volatility, and smart-money characteristics of every session in one professional dashboard.
The primary objective of this indicator is to help traders understand which session is statistically strongest, which session usually creates the daily high or low, where volatility is most likely to appear, and when institutional activity is historically at its highest.
Whether you trade Forex, Gold, Indices, Crypto, or CFDs, Session Intelligence Matrix Pro allows you to make decisions based on historical session behavior rather than assumptions.
Why This Indicator Was Created
Most traders know the names of the major trading sessions:
Asia
London
New York AM
New York Lunch
New York PM
However, very few traders actually know:
Which session usually creates the largest move?
Which session most often sets the High of the Day?
Which session usually creates the Low of the Day?
Which session generates the largest Fair Value Gaps?
Which session contributes the highest percentage of daily volume?
Which session normally produces continuation after the previous session?
These statistics are extremely valuable for intraday traders, yet TradingView does not provide them.
Session Intelligence Matrix Pro was developed to solve this problem by collecting historical session statistics and presenting them in an easy-to-read institutional dashboard.
How the Indicator Works
The indicator automatically separates each trading day into five major sessions:
Asia Session
London Session
New York AM
New York Lunch
New York PM
For every completed session, it records important market information including:
Price range
ATR percentage
Candle size
Volume contribution
Bullish or bearish close
Highest price of the day
Lowest price of the day
Fair Value Gap creation
Session percentile
Over time, these records build a statistical database that is used to calculate historical averages and probabilities.
The dashboard is continuously updated as new market data becomes available.
Dashboard Metrics Explained
Average Range
Shows the average number of price points traveled during each session.
This helps identify which sessions normally produce the biggest market movement.
Large average range generally means:
Better trading opportunities
Higher volatility
Larger profit potential
Average ATR %
Displays how large each session is relative to the Daily ATR.
Instead of showing raw price movement, this metric compares every session against the market's normal daily volatility.
Higher values indicate stronger expansion.
Volume Share %
Shows how much of the entire day's trading volume is generated during each session.
This quickly reveals where institutional participation is strongest.
Average Candle Size
Calculates the average size of candles printed during every session.
Larger candles usually indicate:
Strong momentum
Institutional participation
Aggressive buying or selling
Highest Range
Displays the largest range ever recorded for that session within the available historical dataset.
Useful for understanding maximum expansion potential.
Lowest Range
Displays the smallest recorded range for every session.
This helps traders recognize when markets are historically quiet.
Bullish Session %
Shows how often each session closes bullish.
Example:
London Bullish Session = 54%
This means London has historically closed bullish approximately 54% of the recorded sessions.
High Of Day %
One of the most useful statistics.
Shows how frequently a session creates the day's highest price.
For example:
NY PM = 72%
This means that historically, the New York PM session has produced the High of the Day in 72% of the analyzed periods.
Low Of Day %
Shows how often each session creates the day's lowest price.
This helps traders anticipate where reversals or trend completions are most likely to occur.
Average FVG Count
Counts the average number of Fair Value Gaps created during every session.
Higher values indicate more institutional imbalance and stronger Smart Money activity.
Live Percentile
This feature compares the current session against historical data.
For example:
Live Percentile = 75%
This means the current session is already larger than 75% of previous sessions.
This allows traders to instantly understand whether today's market is:
Normal
Weak
Exceptionally volatile
Session Visualization
The indicator also draws colored session boxes directly on the chart.
Each box clearly highlights:
Session start
Session end
Session range
Session identification
This allows traders to quickly recognize where important moves occurred during the trading day.
Designed For
Session Intelligence Matrix Pro can be used on:
Forex
Gold (XAU/USD)
Silver
Crypto
Indices
CFDs
Futures
It is especially valuable for:
Intraday Traders
Scalpers
Smart Money Traders
ICT Traders
Session-Based Traders
Price Action Traders
Institutional Strategy Traders
Key Benefits
Automatically analyzes every major trading session.
Tracks historical session performance.
Displays institutional-quality statistics in a professional dashboard.
Identifies where volatility is historically concentrated.
Shows which session most frequently creates the High and Low of the Day.
Measures average volatility and ATR expansion.
Calculates volume contribution for each session.
Tracks Fair Value Gap frequency.
Displays live session percentile against historical data.
Helps traders trade with statistical confidence instead of emotion.
Disclaimer
This indicator is designed as a market analysis and statistical decision-support tool. Historical probabilities do not guarantee future market performance. Traders should always combine session statistics with proper market structure analysis, confirmation, and sound risk management before entering any trade.
Verification
Verified Original Script
Developed, programmed, and independently published by Forex_Market_Insights
This script represents original work created specifically for this TradingView publication and is not intended to copy or reproduce another author's proprietary implementation.
Clarification
Forex_Market_Insights is the original creator and developer of the concepts, analytical methodology, and overall trading framework reflected in this indicator.
This publication has been created with full acknowledgment of the original research and development behind the project. The verification reference to Forex_Market_Insights is included solely to recognize the origin of the analytical concepts and development process associated with this work.
The inclusion of Forex_Market_Insights in the verification section is intended as proper attribution and acknowledgment of the original creator's contribution to the methodology presented in this indicator. אינדיקטור

SWING DEMA 200 SUPERTRENDThis script is a high-confluence, trend-following Kill Zone & Swing Trading Strategy built for TradingView (Pine Script v6). It filters short-term candlestick structural reversals against long-term and medium-term trends during specific high-volume market sessions.
Core Components & LogicSession & Kill Zone Filter (Time Filter)
Tracks 4 major trading sessions: Asia, London Open, NY AM, and London Close (configured using New York time).
Valid trades can only be triggered when the market is inside these specific high-volume "Kill Zones.
"Trend Definition (Trend Filter)
Macro Trend: Defined by the 200 Double Exponential Moving Average (DEMA 200).Long positions (Buys) are only allowed if the price is above the DEMA 200.Short positions (Sells) are only allowed if the price is below the DEMA 200.
Micro Trend: Monitored by the Original Supertrend formula. It acts as a secondary filter ensuring you never trade against immediate momentum.
Anti-Whipsaw Filter (Volatility Filter)Measures the rate of change of the DEMA 200 against a 14-period ATR.If the market moves too flat (sideways), the background changes to a custom gray color, and all trading signals are locked to prevent false breakouts.
3-Candle Swing Signals (Execution)
Automatically detects structural Swing Highs (Pinnacles) and Swing Lows (Valleys) based on 3-candle fractal formations.Signals are plotted on the chart as highly visible Red and Green Triangles.
Dynamic Money Management (Risk Control)
Once a valid signal prints, the script instantly calculates and plots Stop Loss (SL) and Take Profit (TP) target guide lines.The SL is anchored directly to the Supertrend line plus a safety tick buffer, while the TP is automatically projected based on a user-defined Risk-to-Reward Ratio (e.g., 1:1.5).
🟢 ENTRY CHECKLIST
- BUY (LONG) POSITION
Phase 1: Timing Validation (Kill Zone)
Active Session: Current server time must fall within an authorized window (Asia, London Open, NY AM, or London Close).
Session BG Active: The chart background must display the session color (Purple, Blue, Orange, or Maroon).
Phase 2: Trend & Volatility Validation
Macro Filter: The current candle price must close above the orange DEMA 200 line.
Micro Filter: The original Supertrend line must be Green and plotting underneath the candles.
Volatility Filter: The background MUST NOT turn Gray (DEMA 200 is healthy and the market is not flat/sideways).
Phase 3: Candle Execution
Fractal Trigger: A structural Green Triangle (Low Swing) must print at the bottom of the pattern.
Bar Close Confirmation: The entry candle must fully close to prevent signal recalculation or repainting.
Risk Parameters: Orders must be set using the dynamic red line for Stop Loss (targetSL) and the teal line for Take Profit (targetTP).
🔴 ENTRY CHECKLIST - SELL (SHORT) POSITION
Phase 1: Timing Validation (Kill Zone)Active Session: Current server time must fall within an authorized window (Asia, London Open, NY AM, or London Close).Session BG Active: The chart background must display the session color (Purple, Blue, Orange, or Maroon).
Phase 2: Trend & Volatility Validation
Macro Filter: The current candle price must close below the orange DEMA 200 line.
Micro Filter: The original Supertrend line must be Red and plotting above the candles.
Volatility Filter: The background MUST NOT turn Gray (DEMA 200 is healthy and the market is not flat/sideways).
Phase 3: Candle Execution
Fractal Trigger: A structural Red Triangle (High Swing) must print at the top of the pattern.
Bar Close Confirmation: The entry candle must fully close to prevent signal recalculation or repainting.
Risk Parameters: Orders must be set using the dynamic red line for Stop Loss (targetSL) and the teal line for Take Profit (targetTP).
⚠️ NO-TRADE ZONE (DO NOT ENTER)
Immediately skip the trade setup if any of these conditions are met:
Gray Background is active → The algorithm detects a flat market where trend-following accuracy plummets.
Conflicting indicators → For example, a Green Buy Triangle prints but the price is under DEMA 200 or the Supertrend is still Red.
Outside Session Windows → The market lacks the necessary institutional momentum to push price targets efficiently.
"Special thanks to kivancOzbilgic for his amazing Supertrend script, which allowed me to successfully integrate it into this method." אינדיקטור

אינדיקטור

FractalMemoryLib [Jayadev Rana]FractalMemoryLib packages the pattern-memory engine used by the Fractal Memory Projection indicator and the Fractal Memory Strategy so any script can import it.
WHAT IT DOES
The library finds the historical window whose movement shape most resembles the most recent bars (mean squared distance between stdev-normalized log returns), replays what followed that window as a projected close path, and sizes stops and targets adaptively by volatility regime.
EXPORTED FUNCTIONS
logRet(src) - one-bar log return of a series.
bestMatch(src, winLen, scanDepth, gapAhead) - scans up to scanDepth bars back and returns the offset of the most similar window plus a 0-100 similarity score. gapAhead reserves bars after the match for a projection.
analogPath(src, offset, fcLen, scaleF) - array of fcLen projected closes built by replaying the returns that followed the match, rescaled by scaleF (for example current ATR over ATR at the match).
adaptiveR(atrLen, rankLen, base) - volatility-adaptive unit risk: ATR times (base plus its 0-1 percentile rank), plus the rank itself. Call on every bar.
volRegime(volRank) - "Low", "Normal" or "High" label from the rank.
targets(entry, dirSign, unitR, slMult) - stop loss and TP1/TP2/TP3 at 1R, 2R and 3R.
USAGE NOTES
Call adaptiveR on every bar for ta consistency. bestMatch and analogPath are loop-heavy; for display purposes call them on the last bar only, and make sure the chart has at least scanDepth plus gapAhead bars of history. When the library itself is added to a chart it draws a small demo projection line from the best analog.
The analog projection is a statistical reference to a similar past episode, not a prediction, and not financial advice. ספרייה

Fractal Memory Strategy [Jayadev Rana]Fractal Memory Strategy trades the same engine as the Fractal Memory Projection indicator: it looks for the historical episode most similar to current price action, and only takes trend flips that agree with how that episode played out. Exits scale out at three volatility-adaptive targets.
HOW IT DECIDES
An ATR trailing stop tracks the trend. When it flips, the last 30 closes are converted to normalized log returns and compared against past windows by mean squared distance. The bars that followed the best analog give a net direction; the flip is only traded when the analog direction agrees (the filter can be disabled). Orders are processed on bar close, so no lookahead is involved. For visual context the strategy also draws the 50-candle ghost projection beyond the last bar - it is display-only and never affects order logic.
ENTRIES AND EXITS
On a confirmed bullish flip with agreement the strategy closes any short and enters long; the mirror applies to shorts. One unit of risk R equals ATR times (1.2 plus the ATR percentile rank over 200 bars), so targets and stops widen in volatile regimes and tighten in quiet ones. Position exits: one third at 1R, one third at 2R, the remainder at 3R, with a stop at 1.5R (all adjustable). Direction can be restricted to long-only or short-only.
PROPERTIES USED IN THE PUBLISHED BACKTEST
10,000 initial capital, 10 percent of equity per trade, 0.01 percent commission per order, 2 ticks slippage, no pyramiding, orders on close. These are deliberately conservative; adjust them to match your own broker before drawing any conclusion.
PANEL
Match similarity, volatility regime, forecast direction, closed trade count and win rate.
NOTES
The analog projection is a statistical reference, not a prediction, and past behaviour does not guarantee anything about the future. Results vary by symbol and timeframe; test on your own market with realistic costs before considering any live use. This is an educational tool, not financial advice. אסטרטגייה

88Targets - CVDD ProCVDD Pro — Bitcoin's Historical Floor and Cycle Top, On One Chart
THE IDEA IN ONE LINE
Every Bitcoin cycle, coins move from experienced long-term holders to new buyers. CVDD tracks the cumulative price at which that handover happened — and historically, Bitcoin's biggest bottoms formed right at that level. This indicator draws that floor, an accumulation zone above it, and a cycle-top estimate — all from real on-chain data.
WHAT YOU SEE
• Gold line — the raw CVDD floor, computed from on-chain data (Realized Cap minus cumulative transfer volume). Bitcoin's major bottoms (2015, 2018, 2022) formed at or near this line.
• Blue line — the practical bottom line, set slightly above the raw floor (Bitcoin historically bottoms a little above it, not exactly on it).
• Green shaded zone — the accumulation zone. Price entering here has historically meant late-stage capitulation territory.
• Red line — the cycle top estimate. Bitcoin's blow-off tops have been shrinking every cycle as the market matures; this line models that decay and compresses over time.
• Background highlights — soft green when price tags the bottom line, soft red when it tags the top line.
SIGNALS & ALERTS (3 built in)
• Zone entry (▽ marker + alert) — price entered the accumulation zone. A heads-up, not a buy signal.
• Zone exit upward (▲ marker + alert) — price climbed back OUT of the zone. Historically this confirmation marked the end of capitulation, near the start of new cycle legs.
• Top band touch (alert) — price reached the cycle top estimate, historically distribution territory.
HOW THE TOP MODEL WORKS (original)
Bitcoin's cycle tops used to overshoot the floor by huge multiples in its early years, and that overshoot has shrunk every cycle. The top line models this with a simple decaying multiple: it starts high in the early era and compresses toward a minimum as the market matures. The three settings controlling it are pre-fitted to the 2013 / 2017 / 2021 / 2025 tops and explained in plain language in their tooltips.
DATA & REQUIREMENTS
• Uses TradingView's integrated on-chain feeds: COINMETRICS:BTC_MARKETCAPREAL and GLASSNODE:BTC_TOTALVOLUME
• Bitcoin only — the script warns you if loaded on a non-BTC chart
• Best on Daily or Weekly with full history (e.g. BITSTAMP:BTCUSD)
SETTINGS
Every setting is written in plain language with a tooltip. The defaults are calibrated — most users never need to change anything. The Colors group lets you restyle every element.
HONEST LIMITATIONS — PLEASE READ
• Bitcoin has had only a handful of true cycle bottoms and tops in its entire history. That is a very small sample — these levels are historical references, not guarantees.
• The top model is fitted to past cycles. Market structure changes (ETFs, institutional holders) may change how future cycles behave in ways no historical model can anticipate.
• Nothing here predicts the future. This is a decision-support tool for cycle context — not financial advice and not a complete trading system. Always apply your own risk management.
CREDITS & ORIGINALITY
The CVDD concept was created by Willy Woo and is publicly documented. This script is an original, from-scratch implementation of that public concept using TradingView's on-chain data feeds, extended with an original cycle-top decay model, accumulation zone system, confirmation signals, and dashboard — none of which reuse code from other scripts. אינדיקטור

אינדיקטור

Risk & Position Sizing CalculatorRisk & Position Sizing Calculator with Signal Add-on
---
LEGAL DISCLAIMER — READ FIRST
**This script and this description are for EDUCATIONAL PURPOSES ONLY.**
- This is **not** investment advice, a trading recommendation, or a solicitation to buy or sell any stock, index, or F&O (Futures & Options) contract.
- Nothing in this script or description constitutes a recommendation to trade Nifty, Bank Nifty, or any stock, in cash, futures, or options.
- The script does **not** predict market direction and does **not** guarantee profit. Past performance of any rule-set (including the EMA-crossover logic used here) does not guarantee future results.
- Trading in equities, futures, and options carries a **high risk of loss**, including the possible loss of your entire invested capital, and is not suitable for everyone.
- All entries, exits, position sizes, and trading decisions remain **solely your own responsibility**.
- Please independently verify all information and **consult a SEBI-registered Investment Adviser** before making any trading or investment decision.
- The creator of this script accepts **no liability** for any financial loss arising from its use.
By using this script, you acknowledge that you understand and accept the above.
---
1. What This Script Is
A **risk and position-sizing calculator** for TradingView, with an **optional mechanical signal add-on**. It does two separate jobs:
1. **Risk Calculator (always on):** tells you how many lots you could safely trade on any chart (Nifty, Bank Nifty, or a stock), given your capital and risk tolerance — the math, not a prediction.
2. **Signal Add-on (optional, toggle on/off):** plots a Buy marker based on one fixed technical rule (EMA crossover, optionally RSI-filtered), then tracks that trade and marks profit-booking levels (T1/T2/T3) and stop-loss on the chart, with alerts.
אינדיקטור

Regression Pulse Trend Suite [Crypto_Zombianz]# Regression Pulse Trend Suite
## Overview
Regression Pulse Trend Suite is a multi-purpose trend-following and market-structure indicator designed to help traders identify trend direction, dynamic support and resistance areas, potential reversal points, and long or short trading opportunities.
The indicator combines a Linear Regression Channel, volatility-based deviation bands, an EMA trend ribbon, peak and trough detection, risk-management levels, and customizable alerts in one complete trading tool.
It can be used on cryptocurrencies, forex, stocks, indices, commodities, and other liquid markets across multiple timeframes.
## Main Features
### Linear Regression Trend Channel
The indicator calculates a Linear Regression Channel using the selected lookback period.
The channel includes:
* A central regression line representing the prevailing price trend.
* Upper and lower deviation bands representing dynamic resistance and support.
* Intermediate dotted levels that help identify potential reaction and pullback areas.
* Optional channel extension to project the current trend structure forward.
The channel automatically adjusts as new price data becomes available.
### EMA Trend Ribbon
The indicator displays five Exponential Moving Averages:
* EMA 8
* EMA 12
* EMA 16
* EMA 20
* EMA 24
The EMA ribbon provides a visual representation of short-term trend direction and momentum.
A properly aligned and expanding ribbon may indicate strengthening momentum, while a compressed or frequently crossing ribbon may indicate consolidation or an uncertain market.
### Peak and Trough Detection
The indicator identifies potential market turning points using candle-direction changes and previous threshold levels.
* A red cross represents a detected peak.
* A blue diamond represents a detected trough.
* A red circle represents a potential short signal when signal visibility is enabled.
* A blue circle represents a potential long signal when signal visibility is enabled.
Peak and trough markers are not guaranteed reversal signals. They should be confirmed using the regression channel, EMA ribbon, market structure, volume, or another confirmation method.
### Long and Short Signals
A potential long signal is generated when a detected trough is followed by price crossing above the lower regression deviation band.
A potential short signal is generated when a detected peak is followed by price crossing below the upper regression deviation band.
The Position setting can be used to control which trade directions are allowed.
## How to Use the Indicator
### Long Setup
Consider a potential long setup when:
1. The price is near or below the lower regression channel.
2. A trough is detected.
3. The price crosses back above the lower deviation band.
4. The EMA ribbon supports bullish momentum.
5. The selected Position mode allows long trades.
The blue diamond identifies a trough, while the optional blue circle represents a potential long entry signal.
Avoid entering only because a trough appears. Waiting for candle-close confirmation and additional trend confirmation may help reduce false signals.
### Short Setup
Consider a potential short setup when:
1. The price is near or above the upper regression channel.
2. A peak is detected.
3. The price crosses back below the upper deviation band.
4. The EMA ribbon supports bearish momentum.
5. The selected Position mode allows short trades.
The red cross identifies a peak, while the optional red circle represents a potential short entry signal.
Avoid entering only because a peak appears. Waiting for candle-close confirmation and additional trend confirmation may help reduce false signals.
### Trend-Following Method
The indicator may also be used for trend-following entries.
During a bullish trend, traders can monitor the central regression line, lower intermediate level, or lower channel boundary for pullback opportunities.
During a bearish trend, traders can monitor the central regression line, upper intermediate level, or upper channel boundary for potential short opportunities.
A wider and clearly aligned EMA ribbon generally represents stronger momentum. A narrow or mixed ribbon can indicate consolidation.
### Support and Resistance Method
The regression levels can act as dynamic support and resistance zones:
* The upper deviation band may act as dynamic resistance.
* The lower deviation band may act as dynamic support.
* The central regression line may act as a trend equilibrium level.
* The intermediate dotted levels may act as pullback or partial profit-taking zones.
These levels should be treated as areas rather than exact prices.
## Indicator Settings
### Position
Controls the permitted trade direction:
* **Auto:** Allows long and short signals according to the regression trend filter.
* **Auto Long:** Allows only trend-filtered long signals.
* **Auto Short:** Allows only trend-filtered short signals.
* **Fixed:** Allows both long and short signals without the automatic trend-direction filter.
* **Fixed Long:** Allows only long signals.
* **Fixed Short:** Allows only short signals.
### Quantity
Sets the quantity value included in the indicator’s dynamic alert message.
This setting does not automatically place or execute an order.
### Take Profit
Controls the reward-to-risk multiplier used to calculate the projected take-profit level.
For example, a value of 1.2 calculates a target approximately 1.2 times the defined risk distance.
### Stop Loss
Available stop-loss calculation methods:
* **ATR:** Adds or subtracts one ATR from the recent three-bar high or low.
* **ATR x 2:** Adds or subtracts two ATR values from the recent three-bar high or low.
* **HHLL:** Uses the highest high or lowest low of the latest three candles without an additional ATR offset.
### Deviation
Controls the width of the Linear Regression Channel.
A higher value creates wider bands and fewer potential channel-crossing signals. A lower value creates narrower bands and may produce more frequent signals.
### Period
Defines the number of candles used in the Linear Regression calculation.
Lower periods react faster to recent price changes but may generate more market noise. Higher periods create smoother channels but react more slowly.
### Spread Percentages
Displays the percentage movement between detected peaks and troughs.
This can help traders estimate the size of recent market swings.
### Extend Trendlines
Extends the regression channel to the right side of the chart.
The projected lines represent the continuation of the current regression structure and will change as new candles are added.
### Visible Signals
Shows or hides the circular long and short signal markers.
Disabling this option does not disable the alert conditions.
## Alerts
The indicator provides alert conditions for:
* Long entry
* Short entry
* Peak detected
* Trough detected
Dynamic long and short alerts may also include:
* Ticker symbol
* Current price
* Quantity
* Stop-loss level
* Take-profit level
To create an alert, add the indicator to the chart, open TradingView’s alert menu, select the indicator, and choose the required alert condition.
For more reliable confirmation, alerts may be configured to trigger once per bar close.
## Recommended Usage
The indicator may be more effective when used with:
* Higher-timeframe trend analysis
* Support and resistance levels
* Volume confirmation
* Market structure
* Appropriate position sizing
* Candle-close confirmation
It is recommended to test different Period and Deviation settings because every market and timeframe has different volatility characteristics.
## Important Notes
The projected stop-loss and take-profit levels are visual reference levels only. The indicator does not automatically execute trades or manage positions.
Regression channels and signals can change as new market data becomes available. Projected trendlines should not be treated as fixed future levels.
No indicator can predict every market movement or eliminate false signals. Always test the indicator using historical data, paper trading, and your own trading plan before using it in live markets.
## Disclaimer
This indicator is provided for educational and informational purposes only. It does not constitute financial, investment, or trading advice. Trading involves substantial risk, and past performance does not guarantee future results. Users are responsible for their own trading decisions and risk management.
אינדיקטור

Quantum Trend Fusion ProQuantum Trend Fusion Pro
Quantum Trend Fusion Pro is a complete multi-factor trend analysis and trade confirmation indicator designed to help traders identify high-probability market opportunities by combining trend direction, momentum, market structure, volatility, volume analysis, probability scoring, and dynamic trade management into a single professional trading system.
Unlike traditional indicators that rely on only one technical method, Quantum Trend Fusion Pro continuously evaluates multiple market conditions simultaneously and converts them into an easy-to-read visual trading framework. The objective is to reduce market noise, filter weak trading opportunities, and highlight only those setups where several independent market factors align together.
Why This Indicator Was Created
Financial markets rarely move because of a single technical signal. Strong trends are usually supported by multiple confirmations such as momentum, volatility expansion, volume participation, directional pressure, and market structure.
Most traditional indicators only analyze one part of the market, forcing traders to combine several indicators manually.
Quantum Trend Fusion Pro was created to solve this problem by bringing all important technical components into one integrated system that continuously evaluates the current market environment and presents the results in a clean visual format.
Instead of making decisions from isolated indicators, traders receive one combined probability-based analysis.
How The Indicator Works
The indicator continuously analyzes live market data and processes multiple independent technical models simultaneously.
These include:
• Multi Moving Average Fusion Engine
• Adaptive Trend Analysis
• Momentum Analysis
• Market Structure Detection
• Relative Volume Analysis
• ATR Based Volatility Analysis
• Price Pressure Analysis
• Candle Strength Analysis
• Probability Scoring Engine
• Dynamic Quantum Oscillator
Every incoming candle updates all calculations in real time.
The indicator then combines these calculations using its internal weighted scoring model to estimate the current bullish and bearish probability.
Multi Moving Average Fusion
Instead of relying on only one moving average, the indicator creates a fusion of multiple moving averages with different lengths.
This allows the system to identify:
• Short-term direction
• Medium-term trend
• Long-term trend
• Trend alignment
• Trend strength
When all moving averages align together, the probability of a strong trend increases.
The colored trend cloud also becomes visually stronger, allowing traders to instantly identify the dominant market direction.
Dynamic Trend Cloud
The multi-layer trend cloud acts as a visual representation of market strength.
Green cloud indicates bullish dominance.
Red cloud indicates bearish dominance.
Neutral colors indicate uncertainty or ranging conditions.
As trend strength increases, the cloud expands and becomes more visually dominant.
During weak markets the cloud contracts and becomes lighter.
This allows traders to understand market strength without reading numerical values.
Smart Probability Engine
One of the most important components of the indicator is the probability engine.
Rather than generating random Buy or Sell signals, the indicator calculates probability using several independent market factors including:
• Trend alignment
• Momentum
• Market structure
• Relative volume
• Candle pressure
• Wick behavior
• Price position inside recent trading range
These values are combined into a weighted mathematical model that estimates the likelihood of bullish or bearish continuation.
The dashboard continuously updates these probabilities as new candles form.
Buy & Sell Signal Logic
Buy signals are not generated simply because price moves upward.
A Buy signal appears only when multiple conditions confirm each other simultaneously.
Examples include:
• Bullish trend alignment
• Positive momentum
• Bullish probability above the selected threshold
• Market structure confirmation
• Oscillator confirmation
• Volume confirmation (optional)
Similarly, Sell signals require:
• Bearish trend
• Negative momentum
• Bearish probability
• Structural weakness
• Oscillator confirmation
• Volume confirmation
Because several filters must agree together, weaker market conditions are automatically ignored.
High Probability Signals
The indicator also identifies exceptionally strong trading opportunities.
When the probability score reaches the High Probability threshold together with trend, momentum, and structure confirmation, a HIGH PROBABILITY SIGNAL label is displayed directly on the chart.
These setups represent periods where multiple independent market conditions align in the same direction, providing stronger confidence than standard signals.
Dynamic Trade Management
After a Buy or Sell signal appears, the indicator automatically creates a professional trade projection.
This includes:
• Entry price
• Stop Loss
• TP1
• TP2
• TP3
• TP4
• Risk-to-Reward visualization
• Profit zone
• Risk zone
• Percentage movement for every target
This helps traders visualize trade planning without manually calculating risk management levels.
Quantum Oscillator
The lower panel contains the custom Quantum Oscillator.
Unlike traditional oscillators that measure only momentum, this oscillator combines:
• Trend
• Momentum
• Velocity
• Price pressure
• Volume
• ATR volatility
The oscillator continuously changes according to live market conditions.
Green waves represent bullish strength.
Red waves represent bearish pressure.
Signal dots identify important momentum shifts while the signal line helps confirm changes in market direction.
Professional Dashboard
The live dashboard summarizes the complete market condition into one compact panel.
It continuously displays:
• Overall Signal
• Trend Score
• Momentum Score
• Volatility Score
• Structure Score
• Probability Score
• Volume Score
• ATR
• Bullish Percentage
• Bearish Percentage
• Current Trend
• Signal Quality
• Market State
• Current Bias
• Risk Level
• Recommended Direction
• Overall Trend Strength
Every value updates automatically as the market changes, giving traders a complete snapshot of current conditions without switching between multiple indicators.
Main Features
• Multi Moving Average Fusion Engine
• Adaptive Trend Detection
• Multi-Layer Dynamic Trend Cloud
• Probability Based Signal Engine
• Smart Buy & Sell Signals
• High Probability Trade Detection
• Dynamic Trade Projection
• Automatic Risk Management
• Four Take Profit Levels
• ATR Based Stop Loss
• Quantum Oscillator
• Professional Market Dashboard
• Trend Strength Measurement
• Volume Confirmation
• Market Structure Analysis
• Momentum Confirmation
• Live Market Scoring System
• Real-Time Probability Analysis
Best Use Cases
Quantum Trend Fusion Pro can be used for:
• Forex Trading
• Gold (XAUUSD)
• Cryptocurrency
• Indices
• Stocks
• Futures
It is suitable for:
• Scalping
• Intraday Trading
• Swing Trading
• Position Trading
Important Note
This indicator is designed as a professional decision-support tool. It helps traders evaluate market conditions by combining multiple technical factors into a single probability-based framework. As with any technical analysis tool, it should be used alongside sound risk management and the trader's own market judgment.
Originality & Author Verification
Quantum Trend Fusion Pro is an original indicator independently researched, designed, and developed by Forex_Market_Insights.
All calculations, probability models, trend fusion logic, quantum oscillator, dashboard architecture, visualization techniques, signal generation workflow, trade management system, scoring methodology, and overall implementation were created specifically for this project.
This script is not a copy, clone, conversion, modification, reverse-engineered version, or recreation of any existing TradingView script.
While it uses widely recognized technical analysis concepts such as moving averages, momentum, volatility, ATR, volume, market structure, and trend analysis, the overall architecture, mathematical integration, visualization system, and workflow are independently implemented.
© Forex_Market_Insights — All Rights Reserved. אינדיקטור

Kill Zone Swing DEMA 200 + Supertrend FilterThis script is a high-confluence, trend-following Kill Zone & Swing Trading Strategy built for TradingView (Pine Script v6). It filters short-term candlestick structural reversals against long-term and medium-term trends during specific high-volume market sessions.
Core Components & LogicSession & Kill Zone Filter (Time Filter)
Tracks 4 major trading sessions: Asia, London Open, NY AM, and London Close (configured using New York time).
Valid trades can only be triggered when the market is inside these specific high-volume "Kill Zones.
"Trend Definition (Trend Filter)
Macro Trend: Defined by the 200 Double Exponential Moving Average (DEMA 200).Long positions (Buys) are only allowed if the price is above the DEMA 200.Short positions (Sells) are only allowed if the price is below the DEMA 200.
Micro Trend: Monitored by the Original Supertrend formula. It acts as a secondary filter ensuring you never trade against immediate momentum.
Anti-Whipsaw Filter (Volatility Filter)Measures the rate of change of the DEMA 200 against a 14-period ATR.If the market moves too flat (sideways), the background changes to a custom gray color, and all trading signals are locked to prevent false breakouts.
3-Candle Swing Signals (Execution)
Automatically detects structural Swing Highs (Pinnacles) and Swing Lows (Valleys) based on 3-candle fractal formations.Signals are plotted on the chart as highly visible Red and Green Triangles.
Dynamic Money Management (Risk Control)
Once a valid signal prints, the script instantly calculates and plots Stop Loss (SL) and Take Profit (TP) target guide lines.The SL is anchored directly to the Supertrend line plus a safety tick buffer, while the TP is automatically projected based on a user-defined Risk-to-Reward Ratio (e.g., 1:1.5).
"Special thanks to kivancOzbilgic for his amazing Supertrend script, which allowed me to successfully integrate it into this method." אינדיקטור

Risk & Position Sizing CalculatorWhat it does
It's a risk and position-sizing calculator for TradingView — not a buy/sell signal generator. It runs on top of any chart (Nifty, Bank Nifty, or a stock) and answers: "If I enter here, how many lots can I safely trade given my capital and risk tolerance?"
1. Inputs (4 setting groups)
Capital & Risk — your capital, risk % per trade, and Caution/High-Risk thresholds that color-code the dashboard.
Stop-Loss Method — ATR-based (volatility-derived) or Swing High/Low (distance to recent swing point).
Contract Details — lot size (65 for Nifty by default, editable) and direction (Long/Short).
Targets — T1/T2/T3 as multiples of your risk (1R, 2R, 3R), mirroring the T1/T2/T3 in your original screenshot.
2. Calculations
Uses current close as "entry."
Computes stop-loss distance via ta.atr() × multiplier, or highest/lowest price over your lookback.
Derives stop-loss price and the three target prices as R-multiples from entry.
Computes risk amount (capital × risk%), risk per lot (SL distance × lot size), and max safe lots (risk amount ÷ risk per lot) — the same math behind "Safe Lots" in your dashboard tool.
Flags a zone: SAFE / CAUTION / HIGH RISK based on your risk % vs. the thresholds.
3. Visuals
Dashed/dotted lines on the chart for entry, stop-loss, and the three targets.
A dashboard table (top-right corner) showing all the numbers, updated on the latest bar.
What it doesn't do: pull option-chain data (strike, premium, decay) — not accessible אינדיקטור

Native Volume Footprint, 1H Alignment, Brackets & OBs by GuruJamThe TradingView Pine Script v6 dashboard is built to function as a comprehensive macroeconomic and technical analysis tool, specifically optimized for tracking the Nairobi Securities Exchange.
Here is a breakdown of its core structural and functional components:
Core Functionality
Macro-Economic Integration: The script allows for sector-specific customization, enabling you to align technical movements with broader Kenyan macroeconomic trends and specific market sectors.
Advanced Technical Mapping: It incorporates Smart Money Concepts, specifically utilizing horizontal liquidity boxes. These visually map out critical zones of institutional interest, historical support/resistance, and areas where liquidity is resting.
Automated Signal Filtering: Instead of raw data plotting, the script runs market data through customized filters to generate automated, actionable trade signals based on the confluence of volume, price action, and liquidity sweeps.
Technical Architecture
Language: Written in Pine Script v6, taking advantage of the latest array functionalities, dynamic lines, and box drawing capabilities for real-time order book and liquidity evaluation.
Display: Designed as an overlay or dashboard interface to provide multi-timeframe insights without cluttering the primary price chart. אינדיקטור

COT Category Screener [invincible3]COT Category Screener — Participant Select
The COT Category Screener is a professional Commitment of Traders dashboard designed to compare positioning across multiple futures markets from one compact table.
It uses Legacy COT data and allows traders to analyze either Non-Commercial or Commercial participants. Every displayed metric—including net positioning, historical indices, score, bias, ranking, and weekly history—automatically adapts to the selected participant.
MARKET CATEGORIES
The screener supports the following groups:
• Metals
• Energy
• Grains & Oilseeds
• Soft Commodities
• Livestock
• Equity Indices
• Cryptocurrencies
• Major Currencies
• Emerging-Market Currencies
Depending on the selected category, the dashboard compares up to eight markets simultaneously.
PARTICIPANT SELECTION
Choose between:
Non-Commercial
Primarily reflects speculative positioning from large traders such as funds and institutional market participants.
Commercial
Reflects the positioning stance of commercial participants and hedgers.
Commercial mode represents the Commercial participant-side perspective . It should not automatically be interpreted as a contrarian market signal.
When Commercial and Non-Commercial positioning spreads are symmetrical, their displayed scores and bias states will naturally appear opposite.
DASHBOARD METRICS
OI — Open Interest
Displays the total number of outstanding contracts reported for the selected market.
NET — Net Position
Calculated as:
Long Positions − Short Positions
A positive value indicates net-long positioning, while a negative value indicates net-short positioning.
ΔNET — Weekly Net Change
Measures the change in the selected participant’s net position compared with the previous COT report.
It helps identify whether participants are:
• Adding long exposure
• Reducing long exposure
• Adding short exposure
• Covering short exposure
L% and S%
Displays the selected participant’s long and short positions as a percentage of total open interest.
FLIP%
Calculated as:
Long% − Short%
A positive Flip% indicates stronger long exposure, while a negative Flip% indicates stronger short exposure.
HISTORICAL DIFFERENCE MODEL
The screener calculates the historical position of the spread between the selected participant and the opposite participant over three report windows:
• D13 — 13-report difference index
• D26 — 26-report difference index
• D52 — 52-report difference index
These values range from 0 to 100.
In the screener’s model:
• Lower Difference values contribute to a more bullish score.
• Higher Difference values contribute to a more bearish score.
The three windows are weighted as follows:
• D13: 20%
• D26: 30%
• D52: 50%
The longer-term D52 component therefore carries the greatest influence.
COT POSITION INDICES
I52
Shows the selected participant’s current net position relative to its historical range over the previous 52 reports.
I3Y
Shows the same relative position over 156 reports, approximately three years of weekly COT history.
Values near 0 indicate positioning near the lower end of the historical range.
Values near 100 indicate positioning near the upper end of the historical range.
These indices describe historical positioning extremes and should be interpreted together with the participant type, Difference readings, weekly net change, and overall bias.
COMPOSITE SCORE
The screener converts the weighted D13, D26, and D52 readings into a normalized score ranging from:
• +100 — Strong bullish positioning setup
• 0 — Neutral or mixed positioning
• −100 — Strong bearish positioning setup
The score is designed for relative comparison and ranking across markets within the selected category.
BIAS STATES
▲ BUY
Positioning has reached a potential bottom-zone setup.
This identifies an extreme condition, but it does not confirm that positioning has already reversed.
↗ BULL TURN
Short- and medium-term positioning has begun turning upward from a bullish extreme.
▲ LONG BUILD
A bullish turn is supported by a positive weekly change in net positioning, indicating that the selected participant is actively building long exposure.
▲ LONG BIAS
Positioning remains within the bullish side of the model, although a fresh turning condition is not present.
↘ LONG UNWIND
The broader positioning structure remains bullish, but net exposure declined during the latest report.
↗ SHORT COVER
The broader structure remains bearish, but net positioning increased, suggesting that short exposure may be reducing.
▼ SHORT BIAS
Positioning remains within the bearish side of the model without a newly confirmed bearish turn.
◇ TOP RISK
Positioning has reached a potential upper-zone or overcrowded extreme.
This is a risk condition rather than an immediate sell confirmation.
↘ BEAR TURN
Short- and medium-term positioning has begun turning downward from a bearish extreme.
▼ SHORT BUILD
A bearish turn is supported by a negative weekly change in net positioning, indicating active short-position accumulation or long-position reduction.
• NEUTRAL
Positioning is mixed and does not meet the defined bullish or bearish thresholds.
— NO DATA
Sufficient historical COT observations are not yet available for the selected calculation.
WEEKLY POSITIONING HISTORY
The final column displays a compact 10–15 week Flip% sparkline .
Each vertical character represents one COT reporting week:
• The oldest report appears on the left.
• The most recent report appears on the right.
• Taller bars represent stronger relative Flip% readings.
The history can be normalized independently for each market or displayed using a fixed percentage range.
Hover over the history cell to view the underlying weekly values.
SORTING OPTIONS
Markets can be arranged by:
• Category Order
• Bullish → Bearish
• Bearish → Bullish
• Strongest Extreme
This makes it easier to identify the strongest relative opportunities or risks within a market group.
VISUAL DESIGN
The dashboard uses neutral table surfaces with value-colored typography rather than full-cell heatmap coloring.
It automatically adapts to light and dark chart themes and includes detailed hover tooltips for:
• CFTC market codes
• Raw positioning values
• Difference readings
• Historical indices
• Composite scores
• Bias calculations
• Weekly Flip% history
DATA OPTIONS
The user can select between:
• Futures Only
• Futures and Options Combined
All calculations are based on weekly COT reports and are not intended to represent real-time positioning.
SUGGESTED USE
This screener is designed for:
• Identifying historically crowded positioning
• Comparing related futures markets
• Detecting positioning accumulation or distribution
• Monitoring speculative and commercial behavior separately
• Locating potential medium-term bottom or top setups
• Confirming broader macro or price-action analysis
COT positioning is generally more suitable for contextual and medium-term analysis than precise entry timing.
Signals should be combined with price structure, trend, momentum, volatility, and appropriate risk-management rules.
DISCLAIMER
This indicator is an analytical tool and does not constitute financial advice.
Historical positioning extremes do not guarantee a market reversal or continuation.
אינדיקטור

Astro Bias Dashboard 🧭 ASTRO BIAS DASHBOARD
A one-glance morning dashboard that combines five classical astronomical cycles into a single daily bias score — and then checks that bias against live price action before suggesting anything.
━━━ HOW IT WORKS ━━━
The script computes real astronomical values using mean-longitude formulas (J2000 epoch):
- Moon phase — waxing or waning, with illumination percent
- Sun-Moon angle — harmony (trine/sextile), tension (square/opposition), or neutral
- Mercury retrograde — approximated from the 115.88-day synodic cycle
- Eclipse season — Sun's proximity to the lunar nodes
- Planetary hour (hora) — Chaldean sequence from a user-set sunrise time
The first four factors are captured once at the start of each session and stay FIXED for the whole day (score out of 4). This is deliberate: a daily bias that flickers intrabar is useless. Only the hora row updates hourly, because it is a timing tool by design — and it is intentionally excluded from the score.
The dashboard then adds a live reality check: price versus EMA 50. A final Verdict row compares the fixed astro bias with the live trend:
- ALIGNED — astro bias and price agree
- CONFLICT — price is moving against the bias. Price always wins; the dashboard tells you to stand aside.
━━━ HOW TO USE ━━━
1. Check the dashboard once at market open — the bias is fixed for the day.
2. Trade only in the Verdict row's direction. On CONFLICT, reduce size or stay flat.
3. Use the hora row for entry timing: benefic horas (Moon, Mercury, Venus, Jupiter) are preferred entry windows.
4. Combine with your own levels and setups — this is a context filter, not an entry signal.
Alerts included: daily bias bullish/caution, hora change, astro-price conflict, astro-price alignment.
━━━ SETTINGS ━━━
Sunrise hour, dashboard position (8 placements), text size, EMA 50 plot toggle and color, trade-plan rows toggle.
━━━ NOTES & ORIGINALITY ━━━
All astronomical values are computed from scratch inside Pine using mean-longitude approximations — no external data, no libraries, no reused code. Accuracy is well within the tolerance needed for cycle-timing work, though exact panchang timings may differ by a few hours.
This tool treats astronomical cycles strictly as a timing reference. It does not predict market direction, and nothing here is financial advice. Always confirm with price action and manage risk. אינדיקטור

Live Market Probability Matrix ProLive Market Probability Matrix Pro
Live Market Probability Matrix Pro is an advanced Pine Script® v6 indicator developed to provide a real-time probability-based view of market strength, momentum, trend direction, and overall buying versus selling pressure in a single visual dashboard.
Unlike traditional indicators that rely on only one calculation such as RSI, MACD, or Moving Averages, this indicator combines multiple market components into a unified probability engine that continuously evaluates live market conditions and displays them in an easy-to-read visual format.
The purpose of this indicator is to simplify market analysis by converting complex market data into a dynamic probability system that helps traders understand which side of the market currently has stronger control, how confident that control is, and whether the existing trend has enough strength to continue or weaken.
This indicator was designed for traders who prefer visual market analysis instead of interpreting multiple separate indicators.
Why This Indicator Was Created?
Most trading indicators only measure one aspect of the market.
For example:
• RSI measures momentum.
• ATR measures volatility.
• Volume measures participation.
• Moving averages measure trend.
• Structure analysis measures swing direction.
However, professional traders rarely make decisions based on only one indicator.
The market is driven by multiple factors simultaneously.
This indicator was created to combine several important market components into one intelligent probability model that continuously updates as new candles are formed.
Instead of forcing traders to switch between several indicators, all important information is displayed in one organized interface.
Live Market Probability Engine
The core of this indicator is its probability engine.
Every incoming candle updates multiple internal calculations including trend strength, momentum, volatility, structure, candle behavior, relative volume, and directional pressure.
These values are blended together to estimate which side currently has greater probability of controlling price.
Rather than giving random Buy or Sell labels, the indicator continuously measures changing market conditions.
As market conditions improve for buyers, bullish probability increases.
As selling pressure strengthens, bearish probability increases.
The calculations update automatically with every new candle.
Dynamic Bullish & Bearish Probability Circles
One of the most distinctive features of this indicator is the pair of dynamic circular probability diagrams displayed near the end of the chart.
These circles visually represent:
• Bullish Strength
• Bearish Strength
Their size changes dynamically according to the calculated probabilities.
When bullish pressure dominates, the bullish circle becomes larger while the bearish circle contracts.
When sellers gain control, the bearish circle expands while the bullish circle becomes smaller.
Above each circle, the current live probability percentage is displayed, allowing traders to quickly identify the dominant market side without reading numerical data.
This creates an intuitive visual representation of market sentiment.
Dynamic Buy & Sell Strength Bars
Below the circular probability diagrams, the indicator displays two vertical strength bars.
These bars represent:
• Buy Strength
• Sell Strength
The height of each bar changes continuously based on the current market probability.
Higher bars indicate stronger participation from that side of the market.
Lower bars indicate weakening pressure.
Because the bars update in real time, traders can instantly see whether buying or selling momentum is increasing or fading.
Live Probability Dashboard
A fully integrated dashboard is displayed in the corner of the chart.
The dashboard provides continuously updated information including:
• Overall Probability
• Bull Strength
• Bear Strength
• Trend Score
• Momentum Score
• Volatility Score
• Volume Score
• Structure Score
• Candle Score
• Moving Average Score
• Market State
• Current Trend
• Current Bias
• Overall Signal
• Buy Probability
• Sell Probability
• ATR
• Volume Status
Every value is recalculated automatically as new market data becomes available.
This gives traders a complete snapshot of current market conditions without needing multiple separate indicators.
Trend Analysis
The indicator continuously analyzes market direction.
Instead of only identifying whether price is moving higher or lower, it also evaluates the quality of the trend.
Factors such as higher highs, lower lows, directional consistency, and price progression contribute to the trend score.
A stronger trend produces higher confidence within the probability engine.
Weak or sideways markets naturally reduce overall confidence.
Momentum Evaluation
Momentum measures the speed and strength of price movement.
Rapid directional movement increases momentum scores.
Slowing momentum gradually reduces bullish or bearish confidence.
This helps traders distinguish between healthy trends and exhausted moves.
Volatility Measurement
Volatility is monitored continuously.
Periods of expanding volatility often indicate increasing participation and stronger price movement.
Low volatility environments generally produce lower conviction because price lacks directional energy.
The volatility score contributes to the overall probability calculation.
Volume Analysis
The indicator also evaluates relative trading volume.
Higher participation generally strengthens confidence in directional movement.
Lower participation reduces confidence because fewer market participants are supporting the move.
The volume score helps improve the overall quality of the probability model.
Market Structure Analysis
Price structure remains one of the most important components of technical analysis.
The indicator evaluates recent swing highs, swing lows, trend progression, and structural consistency.
Healthy bullish structure increases bullish confidence.
Healthy bearish structure increases bearish confidence.
Structural weakness reduces probability.
Candle Strength Analysis
Individual candle characteristics are also evaluated.
The indicator analyzes factors such as:
• Candle body size
• Wick proportion
• Closing strength
• Directional conviction
Stronger candles contribute more positively to probability calculations than weak or indecisive candles.
Overall Market State
After combining all internal calculations, the indicator determines the current market condition.
Possible conditions may include:
Trending
Ranging
Neutral
Transition
These classifications help traders understand the broader context before making trading decisions.
Overall Signal
The Overall Signal summarizes the combined output of all analytical components.
Depending on market conditions, it may indicate:
Bullish
Bearish
Neutral
Since this result is generated using multiple independent calculations rather than a single indicator, it provides a broader view of current market sentiment.
Works on All Markets
The indicator is designed to work across all TradingView-supported markets, including:
• Forex
• Gold
• Silver
• Cryptocurrency
• Indices
• Commodities
• Futures
• CFDs
Because the calculations are based on price behavior and market activity, the indicator can adapt to different asset classes.
Compatible with All Timeframes
The indicator functions across all TradingView timeframes.
Examples include:
• 1 Minute
• 3 Minutes
• 5 Minutes
• 15 Minutes
• 30 Minutes
• 1 Hour
• 4 Hour
• Daily
• Weekly
Lower timeframes provide faster updates for intraday trading, while higher timeframes offer a broader view of market conditions.
Typical Workflow
A common way to use this indicator is:
Observe the Bullish and Bearish probability circles.
Compare Buy and Sell strength bars.
Review the dashboard scores.
Identify the current market state.
Confirm whether multiple components align in the same direction.
Combine the information with your own trading strategy, market structure analysis, and risk management before making any trading decisions.
Key Features
✔ Live probability engine
✔ Dynamic Bullish probability visualization
✔ Dynamic Bearish probability visualization
✔ Real-time percentage calculations
✔ Adaptive probability circles
✔ Dynamic Buy & Sell strength bars
✔ Live market dashboard
✔ Trend analysis
✔ Momentum analysis
✔ Volatility analysis
✔ Relative volume evaluation
✔ Market structure analysis
✔ Candle strength scoring
✔ Market state classification
✔ Overall probability calculation
✔ Supports all TradingView markets
✔ Compatible with all timeframes
✔ Lightweight visual interface
Important Note
This indicator is designed as a probability-based market analysis and visualization tool. It does not predict future price movements, guarantee profitable trades, or provide financial advice. The displayed probabilities represent analytical estimates derived from multiple technical components and are intended to help traders better understand current market conditions. For best results, this indicator should be used alongside your own technical analysis, trading plan, and disciplined risk management.
Originality & Author Verification
Live Market Probability Matrix Pro is an original Pine Script® v6 indicator independently designed, developed, and authored by Forex_Market_Insights. The concept, probability model, dashboard design, visualization system, scoring methodology, and implementation are based on the author's own research and development. No proprietary or copyrighted code has been copied or reused from third-party scripts. This publication is intended to comply with TradingView House Rules by accurately describing the indicator's functionality and acknowledging its original authorship. אינדיקטור

Fractal Memory Projection [Jayadev Rana]Fractal Memory Projection searches price history for the moment that most resembles the present, then shows what happened next - drawn on your chart as 50 lighter ghost candles ahead of the current bar - together with trend-flip BUY and SELL signals and volatility-adaptive targets.
HOW THE FORECAST WORKS
The last 30 closes are converted to normalized log returns (the pattern window). The script scans up to 750 past bars and scores every historical window of the same length by mean squared distance, so the comparison is about the shape of movement, not price level. The bars that followed the best match are replayed forward from the current close, rescaled by the ratio of current ATR to ATR at the match, and drawn as 50 semi-transparent ghost candles beyond the last bar. The panel reports the match similarity, how many bars ago it occurred, and the net forecast direction.
The projection is a statistical analog - a look at how the most similar past episode unfolded - not a prediction or a guarantee. It is display-only and never affects historical values, so nothing repaints.
BUY AND SELL SIGNALS
An ATR trailing stop tracks the trend. When it flips direction, a BUY or SELL label prints - by default only when the ghost-candle forecast agrees with the flip direction (toggle available). Alerts are included for both signals.
VOLATILITY-ADAPTIVE TARGETS
Target spacing is not fixed. A unit of risk R equals ATR multiplied by (0.8 + ATR percentile rank over 200 bars), so quiet markets produce tighter targets and volatile markets produce wider ones. Each signal sets TP1, TP2 and TP3 at 1R, 2R and 3R and a stop loss at 1.2R (adjustable). Only the most recent trade's levels are kept on the chart to stay clean.
PANEL
Match quality percent, bars since the match, volatility regime (Low, Normal, High), forecast direction, and current trend side.
SETTINGS
Pattern window, scan depth, forecast length, ghost candle colors, ATR length, trail multiplier, forecast-agreement filter, stop multiplier, and panel position are all configurable.
NOTES
Works on any symbol and timeframe with enough history (at least scan depth plus forecast length bars). This is an analysis tool, not financial advice. Test on your own data and manage risk before trading. אינדיקטור

Previous Day Pivot Path - Intraday Support ResistancePrevious Day Pivot Path - Intraday Support Resistance
Overview
Previous Day Pivot Path is an intraday reference-level study built from the confirmed OHLC values of the previous selected trading day. It plots the current day's central pivot and support/resistance levels, then records the first chart bar in which each level is reached and assigns a compact arrival rank.
The script is intended for traders and researchers who want to identify the current day's mathematically derived reference levels without converting them into buy/sell instructions. It does not predict whether a level will hold or break, and it does not present win-rate, profitability, or performance claims.
What makes this implementation different
1. First-arrival path instead of static lines only
Each tracked level begins the day as pending. When the selected price source first reaches it, the script records an arrival rank and can place a numbered badge at the corresponding time.
If more than one previously unreached level is reached in the same chart bar, those levels receive the same rank. OHLC bars do not reveal the true tick-by-tick order inside that bar, so the script deliberately avoids inventing an intrabar sequence that the available data cannot prove.
2. Reached-level fading and next-level focus
Reached levels can fade automatically. The nearest unreached level can receive stronger line emphasis and an optional translucent focus halo. After all displayed levels have been reached, the focus can fall back to the nearest level or remain inactive.
This visual hierarchy separates completed parts of the day's path from levels that remain unvisited, while preserving the exact horizontal prices.
3. Confirmed previous-day data
All daily formula inputs are requested from the last completed daily bar. Open time, close time, open, high, low, and close are all offset by one daily bar before they are used. The current developing daily high, low, or close is never used in the pivot formulas.
The script also checks that the completed daily session is chronologically aligned with the selected intraday source day before it initializes new levels or arrival events.
4. Source-session freshness protection
Three OHLC source modes are available:
- Automatic: uses chart-context OHLC on standard candles and standard-symbol OHLC on non-standard charts.
- Chart context: preserves the chart's ticker modifiers, session, adjustment, and chart-type context.
- Standard symbol: removes non-standard ticker modifiers and uses standard market OHLC.
When the selected standard source has no bar aligned with the current chart timestamp, the script does not reuse an old forward-filled OHLC value. Arrival events pause, and existing drawings remain fixed at the last valid source bar until aligned data becomes available again.
5. Session-aware day handling
The script uses a trading-day key suitable for markets whose sessions cross midnight. This prevents a simple calendar-date change from being treated as the session boundary on many overnight Forex and futures markets.
If the first loaded dataset begins after the selected source day's opening bar, the earlier first-arrival sequence is unknowable. For that one partial day, arrival tracking and open-dependent features are conservatively bypassed rather than reconstructed from incomplete history.
6. Time-anchored persistent drawings
Persistent lines, boxes, right-edge labels, and arrival badges use UNIX-time coordinates. This avoids relying on very old bar_index coordinates on dense second charts and keeps historical drawings independent of the number of bars elapsed since their creation.
7. Multiple formula families plus an editable research mode
The script includes:
- Traditional
- Classic
- Fibonacci
- Camarilla
- Custom research
The custom mode lets users select the pivot center and edit three previous-range multipliers. The multipliers are sorted from smallest to largest before assignment to R1/S1, R2/S2, and R3/S3.
8. Price-grid and duplicate-level controls
Calculated levels can remain raw, round to the nearest minimum tick, or round outward so resistance is rounded upward and support downward. When rounding produces the same price for multiple logical levels, the script can merge them into one line and one badge with a combined code such as P/R1.
9. Researchable arrival definitions
Users can define a first arrival with:
- Wick range
- Candle body range
- Confirmed close crossing
Optional tolerance can be exact, a number of ticks, or a percentage of the previous-day range. Gap crossings can be counted or ignored. Arrival ranking can follow only displayed levels, the selected depth, or all levels produced by the formula.
10. Deliberate chart hygiene
The default presentation prioritizes P, R1/S1, and then outer levels through width, line style, transparency, and optional reached-level fading. Right-edge labels support automatic text contrast and horizontal lane staggering when prices are close.
Optional context references include:
- Central Pivot Range (CPR)
- Previous-day high and low (PDH/PDL)
- Previous-day close (PDC)
- Current selected-source day open
- Opening bracket between the nearest displayed levels above and below the day open
- Compact session brief
All context elements can be disabled independently.
Formula reference
Let O, H, L, and C be the confirmed previous selected daily bar, and let Range = H - L.
Traditional
P = (H + L + C) / 3
R1 = 2P - L
S1 = 2P - H
R2 = P + Range
S2 = P - Range
R3 = H + 2(P - L)
S3 = L - 2(H - P)
Classic
P = (H + L + C) / 3
R1 = 2P - L
S1 = 2P - H
R2 = P + Range
S2 = P - Range
R3 = P + 2Range
S3 = P - 2Range
Fibonacci
P = (H + L + C) / 3
R1/S1 = P +/- 0.382 x Range
R2/S2 = P +/- 0.618 x Range
R3/S3 = P +/- 1.000 x Range
Camarilla
P = (H + L + C) / 3
R1/S1 = C +/- 1.1 x Range / 12
R2/S2 = C +/- 1.1 x Range / 6
R3/S3 = C +/- 1.1 x Range / 4
Custom research
The center can be HLC3, HLCC4, OHLC4, midpoint, or previous close. Three editable multipliers are applied symmetrically to the previous-day range after being sorted from smallest to largest.
Arrival timing
Confirmed bar
This is the reproducible default. An arrival is recorded only after the chart bar is confirmed.
Live bar
Live timing is available for wick arrivals. Intrabar-persistent state latches a wick touch across realtime updates of the open bar. Because all levels first reached inside the same chart bar share one rank, the script does not claim a tick-level order that bar data cannot establish.
Body and close-cross modes automatically use confirmed bars to avoid transient open-bar signals.
Non-standard charts
Heikin-Ashi, Renko, Kagi, Line Break, Point & Figure, and Range bars can be synthetic or approximate. Automatic mode uses standard-symbol OHLC for the level and event source on non-standard charts, but arrival events are paused by default. Users can explicitly allow them for research after accepting the chart-type limitation.
The script is designed for time-based intraday charts. Tick charts and daily-or-higher charts are intentionally rejected with a visible notice rather than processed with ambiguous session assumptions.
Language and user interface
English is the default dynamic chart language. Selecting 日本語 changes dynamic labels, tooltips, safety notices, session-brief text, and language-aware alert() messages. Input names remain short bilingual labels so both English and Japanese users can configure the study.
Key Japanese UI translations:
未到達 = Pending
到達 = Reached
確定足 = Confirmed bar
ライブ・ヒゲ保持 = Live wick latch
前日値幅 = Prior range
次の未到達 = Next unreached
準備完了 = Ready
ソース足なし = Source bar unavailable
日次データ整合待ち = Aligning daily data
合成足イベント停止 = Synthetic events paused
International level codes such as P, R1, S1, PDH, and PDL remain unchanged in both languages.
Alerts
Neutral alert conditions are available for:
- Any pivot's first arrival
- P, R1, S1, R2, S2, R3, and S3 first arrivals
- Confirmed close crossing above or below P
An optional language-aware alert() call can include the reached level codes, shared rank, symbol, timeframe, and selected calculation method. Alerts describe observable level events only; they are not trade recommendations.
Suggested workflow
1. Use a standard candlestick intraday chart for the most direct interpretation.
2. Keep Automatic, Traditional, Nearest tick, Confirmed bar, and Wick for the conservative defaults.
3. Select the desired level depth and optional previous-day references.
4. Enable live timing only when intrabar wick monitoring is required.
5. Create alerts from the neutral first-arrival or confirmed P-cross conditions as needed.
6. Use Market Replay and several symbols/session types before relying on customized settings.
Important limitations
- A previous-day pivot is a mathematical reference, not a prediction that price will reverse or continue.
- Data vendors can revise historical bars, and exchange session definitions can differ across instruments.
- Standard-symbol mode can intentionally have no aligned bar outside its selected session. In that case, events pause instead of carrying stale OHLC forward.
- The first loaded partial source day cannot provide a complete earlier arrival sequence.
- A chart bar cannot prove the order of multiple level touches inside that bar; those first touches share one rank.
- Live wick tracking reacts to realtime updates. Reloaded historical bars contain finalized OHLC, not the original tick stream.
- Synthetic chart bars may not represent executable market prices. Arrival tracking on such charts is disabled by default.
- The study does not provide entries, exits, position sizing, stop placement, or performance statistics.
日本語説明
概要
Previous Day Pivot Pathは、選択したデータソースの確定済み前日OHLCから、当日のP・R・Sを自動計算して描画する日中足向けインジケーターです。
単に水平線を表示するだけではなく、各水準へ当日初めて到達したチャート足を記録し、到達順を番号で表示できます。売買推奨、勝率、収益性、将来予測を提示するものではなく、当日の数理的な節目と到達経路を研究するためのツールです。
主な特徴
初回到達経路
各水準は当日開始時に未到達状態となり、選択した価格ソースが初めて到達すると順位を記録します。同じチャート足の中で複数水準へ初回到達した場合、その足の内部順序はOHLCだけでは証明できないため、すべて同順位とします。
確定前日OHLC
日足リクエストでは、時刻・始値・高値・安値・終値のすべてを1本前へオフセットして使用します。形成中の日足高安や終値はピボット計算に使いません。
ソース欠損時の安全処理
標準銘柄ソースに現在時刻と一致する足がない場合、過去のOHLCを現在足へ持ち越して判定しません。到達イベントを停止し、既存描画を最終有効ソース足で固定します。
夜間市場を考慮した日付管理
Forexや先物など、セッションが日付をまたぐ市場に対応するため、単純なカレンダー日ではなく取引日キーを使用します。
秒足で古くなった描画への耐性
長期間保持する線、ボックス、到達バッジ、右端ラベルはUNIX時刻座標で管理します。高密度な秒足でも、古いbar_index座標による制限へ近づきにくい設計です。
5種類の計算方式
Traditional、Classic、Fibonacci、Camarilla、Custom researchを選択できます。Custom researchでは中心値と3つの前日値幅倍率を変更できます。
到達判定の研究性
ヒゲ、実体、確定終値通過から選択でき、許容幅は厳密一致、ティック数、前日値幅比率から設定できます。ギャップ通過を到達扱いにするかも切替可能です。
視認性
到達済み水準のフェード、最寄り未到達水準の強調、フォーカスハロー、自動文字コントラスト、近接ラベルの横方向段組みを実装しています。
CPR、前日高安、前日終値、当日始値、始値ブラケット、セッション概要は個別に表示・非表示を変更できます。
推奨初期設定
OHLC source Automatic
Pivot method Traditional
Level rounding Nearest tick
Arrival timing Confirmed bar
Arrival basis Wick
Touch tolerance Exact
Arrival universe Displayed levels
Synthetic chart events Off
Auto-stagger labels On
Auto contrast On
Focus halo On
ライブ中のヒゲ到達を監視するときだけ、Arrival timingをLive barへ変更してください。実体・終値通過は安全のため確定足判定になります。
言語切替
Language / 言語でEnglishまたは日本語を選択できます。日本語へ切り替えると、チャート上の動的ラベル、ツールチップ、安全性メッセージ、セッション概要、言語連動alert()が日本語になります。
P、R1、S1、PDH、PDLなどの国際共通コードは両言語で同じ表記です。
重要な注意事項
- ピボットは数理的な参照水準であり、反転やブレイクを保証しません。
- 読み込み初日が選択ソースの日中途中から始まる場合、それ以前の到達順は復元できないため、その日だけ経路追跡を停止します。
- 1本の足内で複数水準へ触れた正確な順序はOHLCから判定できないため、同順位になります。
- 標準銘柄ソースのセッション外では、古い価格を流用せず到達判定を停止します。
- Heikin-Ashi、Renko、Kagiなどの合成足では、到達イベントを既定で停止しています。
- Live barのヒゲ到達はリアルタイム更新に反応します。再読み込み後の履歴足には最終OHLCが残り、当時のティック列そのものは残りません。
- 本インジケーターはエントリー、決済、ストップ、ロット、成績表を提供しません。 אינדיקטור

Dual Supertrend + 50/200 SMASupertrend + Dual Supertrend + 50/200 SMA
This indicator combines two Supertrend indicators with 50 SMA and 200 SMA to help identify trend direction, momentum, and long-term market structure.
Features
• Supertrend (2,2) – Fast trend detection for early trend changes.
• Supertrend (7,3) – Slower trend confirmation to filter market noise.
• Individual On/Off toggle for each Supertrend.
• Automatic BUY and SELL labels based on the primary Supertrend reversal.
• 50 SMA for intermediate trend direction.
• 200 SMA for long-term trend identification.
• Golden Cross and Death Cross signals.
• Optional trend background coloring.
• Built-in TradingView alerts for:
Supertrend BUY
Supertrend SELL
Golden Cross
Death Cross
Typical Usage
Use the (2,2) Supertrend for quicker entries and exits.
Use the (7,3) Supertrend as a higher-confidence trend filter.
When both Supertrends align in the same direction, the trend is generally stronger.
Use the 50 SMA and 200 SMA to identify the broader market trend and key support/resistance areas.
Default Settings
Supertrend 1: ATR Length = 2, Multiplier = 2
Supertrend 2: ATR Length = 7, Multiplier = 3
SMA 50
SMA 200
Disclaimer
This indicator is intended for educational and analytical purposes only. It does not provide investment advice or guarantee trading outcomes. Always validate signals using your own trading plan, risk management rules, and additional market analysis before making any trading decisions. אינדיקטור
