![MQL5 - Linguagem para estratégias de negociação inseridas no terminal do cliente MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
ziko,
e agora o código para o GARTLEY 222, UM CÓDIGO SIMPLES QUE NÃO PRODUZ COM MUITOS SINAIS, MAS É MAIS FELICITÁVEL QUE O GARTLEY
Entradas:
Comprimento(100),
Força(8),
Tolerância(0,10),
BullColor(Azul),
BearColor(Vermelho);
Variáveis:
F1(0.618),
F2(0.786),
F3(1.27),
F4(1.618),
P1Bar(-1),
P2Bar(-1),
T1Bar(-1),
T2Bar(-1),
P1(0.0),
P2(0.0),
T1(0.0),
T2(0.0),
PTValid(Falso),
HLValid(Falso),
InZone(Falso),
GD(0.0),
XA(0,0),
AB(0.0),
BC(0.0),
CD(0.0),
AD(0.0),
C1(Falso),
C2(Falso),
C3(Falso),
C4(Falso),
ABdXA(0.0),
BCdAB(0.0),
CDdBC(0.0),
ADdXA(0.0),
TL1(-1),
TL2(-1),
TL3(-1),
TL4(-1),
TL5(-1),
TL6(-1);
P1Bar = SwingHighBar(1, High, Strength, Length);
P2Bar = SwingHighBar(2, Alta, Força, Comprimento);
T1Bar = SwingLowBar(1, Baixo, Força, Comprimento);
T2Bar = SwingLowBar(2, Baixo, Força, Comprimento);
Se P1Bar -1 e
P2Bar -1 e
T1Bar -1 e
T2Bar -1 Depois começar
{Teste para uma alta 222}
{Trough X é T2}
T2 = Baixo[T2Bar];
{Peak A é P2}
P2 = Alto[P2Bar];
{Trough B é T1}
T1 = Baixo[T1Bar];
{Peak C é P1}
P1 = Alto[P1Bar];
{D é o ponto de compra}
GD = Baixo;
PTVálido = P1Bar < T1Bar e T1Bar < P2Bar e P2Bar < T2Bar;
HLVálido = P1 T2 e P1 > T1;
InZone = GD T2 e P2 >= Mais alto(High, T2Bar);
Se PTVálido e HLVálido e InZone Então Comece
XA = P2 - T2;
AB = P2 - T1;
BC = P1 - T1;
CD = P1 - GD;
AD = P2 - GD;
ABdXA = AB / XA; {AB deve ser 61,8% de XA}
C1 = ABdXA > F1 - Tolerância e ABdXA < F1 + Tolerância;
BCdAB = BC / AB; {BC deve ser 61,8-78,6% de AB}
C2 = BCdAB > F1 - Tolerância e BCdAB < F2 + Tolerância;
CDdBC = CD / BC; {CD deve ser 127-161,8% de BC}
C3 = CDdBC > F3 - Tolerância e CDdBC < F4 + Tolerância;
ADdXA = AD / XA; {AD deve ser 78,6% de XA}
C4 = ADdXA > F2 - Tolerância e ADdXA < F2 + Tolerância;
Se C1 e C2 e C3 e C4 então começa
TL1 = TL_New(Data[T2Bar], Hora[T2Bar], T2, Data[P2Bar], Hora[P2Bar], P2);
Se TL1 >= 0 Então Comece
TL_SetColor(TL1, BullColor);
TL_SetStyle(TL1, Tool_Solid);
TL_SetSize(TL1, 2);
TL_SetSize(TL1, 2); Fim;
TL2 = TL_Novo(Data[P2Bar], Hora[P2Bar], P2, Data[T1Bar], Hora[T1Bar], T1);
Se TL2 >= 0 Então começa
TL_SetColor(TL2, BullColor);
TL_SetStyle(TL2, Tool_Solid);
TL_SetSize(TL2, 2);
TL_SetSize(TL2, 2); End;
TL3 = TL_New(Data[T1Bar], Hora[T1Bar], T1, Data[P1Bar], Hora[P1Bar], P1);
Se TL3 >= 0 Então começa
TL_SetColor(TL3, BullColor);
TL_SetStyle(TL3, Tool_Solid);
TL_SetSize(TL3, 2);
TL_SetSize(TL3, 2); End;
TL4 = TL_New(Data[P1Bar], Hora[P1Bar], P1, Data, Hora, GD);
Se TL4 >= 0 Então começa
TL_SetColor(TL4, BullColor);
TL_SetStyle(TL4, Tool_Solid);
TL_SetSize(TL4, 2);
TL_SetSize(TL4, 2); End;
TL5 = TL_New(Data[T1Bar], Hora[T1Bar], T1, Data, Hora, GD);
Se TL5 >= 0 Então começa
TL_SetColor(TL5, BullColor);
TL_SetStyle(TL5, Tool_Dotted);
Fim;
TL6 = TL_New(Data[T2Bar], Hora[T2Bar], T2, Data, Hora, GD);
Se TL6 >= 0 Então começa
TL_SetColor(TL6, BullColor);
TL_SetStyle(TL6, Tool_Dotted);
Fim;
Fim;
Fim; Fim; Fim; Fim;
{Test for a bearish 222}
{Peak X é P2}
{Trough A é T2}
{Peak B é P1}
{Trough C é T1}
{GD é o ponto curto}
GD = Alto;
PTVálido = T1Bar < P1Bar e P1Bar < T2Bar e T2Bar < P2Bar;
HLVálido = T1 > T2 e P1 < P2 e T1 < P1;
InZone = GD > P1 e GD < P2 e T2 <= Mais baixo(Low, P2Bar);
Se PTVálido e HLVálido e InZone Então Comece
XA = P2 - T2;
AB = P1 - T2;
BC = P1 - T1;
CD = GD - T1;
AD = GD - T2;
ABdXA = AB / XA; {AB deve ser 61,8% de XA}
C1 = ABdXA > F1 - Tolerância e ABdXA < F1 + Tolerância;
BCdAB = BC / AB; {BC deve ser 61,8-78,6% de AB}
C2 = BCdAB > F1 - Tolerância e BCdAB < F2 + Tolerância;
CDdBC = CD / BC; {CD deve ser 127-161,8% de BC}
C3 = CDdBC > F3 - Tolerância e CDdBC < F4 + Tolerância;
ADdXA = AD / XA; {AD deve ser 78,6% de XA}
C4 = ADdXA > F2 - Tolerância e ADdXA < F2 + Tolerância;
Se C1 e C2 e C3 e C4 então começa
TL1 = TL_New(Data[P2Bar], Hora[P2Bar], P2, Data[T2Bar], Hora[T2Bar], T2);
Se TL1 >= 0 Então comece
TL_SetColor(TL1, BearColor);
TL_SetStyle(TL1, Tool_Solid);
TL_SetSize(TL1, 2);
TL_SetSize(TL1, 2); Fim;
TL2 = TL_New(Data[T2Bar], Hora[T2Bar], T2, Data[P1Bar], Hora[P1Bar], P1);
Se TL2 >= 0 Então começa
TL_SetColor(TL2, BearColor);
TL_SetStyle(TL2, Tool_Solid);
TL_SetSize(TL2, 2);
TL_SetSize(TL2, 2); Fim;
TL3 = TL_New(Data[P1Bar], Hora[P1Bar], P1, Data[T1Bar], Hora[T1Bar], T1);
Se TL3 >= 0 Então começa
TL_SetColor(TL3, BearColor);
TL_SetStyle(TL3, Tool_Solid);
TL_SetSize(TL3, 2);
TL_SetSize(TL3, 2); Fim;
TL4 = TL_New(Data[T1Bar], Hora[T1Bar], T1, Data, Hora, GD);
Se TL4 >= 0 Então começa
TL_SetColor(TL4, BearColor);
TL_SetStyle(TL4, Tool_Solid);
TL_SetSize(TL4, 2);
TL_SetSize(TL4, 2); Fim;
TL5 = TL_New(Data[P1Bar], Hora[P1Bar], P1, Data, Hora, GD);
Se TL5 >= 0 Então começa
TL_SetColor(TL5, BearColor);
TL_SetStyle(TL5, Tool_Dotted);
Fim;
TL6 = TL_New(Data[P2Bar], Hora[P2Bar], P2, Data, Hora, GD);
Se TL6 >= 0 Então começa
TL_SetColor(TL6, BearColor);
TL_SetStyle(TL6, Tool_Dotted);
Fim;
Fim;
Fim; Fim; Fim;
Fim; Fim; Fim; Fim; Fim; Fim; Fim; Fim;
outro em jpy
O indicador de zitko está apontando para uma borboleta de 30m de altura
Faz u C o que I C?
O indicador da zitko está apontando para uma borboleta de 30m de altura em gbp
O indicador ainda não está completo, ele apenas fornece pontos XABCD e imprime a retração/expansão entre esses pontos, não verifica se a retração/expansão cumpre ou não a regra do padrão.
outro em jpy
este padrão é inavlídeo,
de acordo com as regras a linha AC 0,832 ou 0,886 , neste gráfico é 1,09.
este padrão é inaválido, de acordo com as regras a linha AC 0,832 ou 0,886 , neste gráfico é 1,09.
oi ziko
obrigado por sua atenção, mas estou me perguntando qual é sua razão para dizer que o padrão é inaválido.eu ficaria realmente encantado se você o esclarecesse??????????
também dê uma olhada na pic.talvez eu tenha cometido um erro!!????????
O AC na minha tabela mostra 1.09, deixe-me verificá-lo novamente
AC = (alto(b)-baixo(c))/(alto(b)-baixo(a))
= (118,57-118,22)/(118,57-118,25) = 1,093 e não 0,764
a linha AC na sua tabela está conectando A a um ponto ligeiramente mais alto que C
A razão pela qual eu preciso de regras bem definidas é que comecei a desenvolver um indicador para estes padrões, comecei com a borboleta de urso,
Estou anexando o indicador,
u pode testar com os gráficos anteriores publicados pela kamyar na semana passada,
testá-lo com EURUSD,4H e EURCAD,4Hexcelente indicador...excelente trabalho...obrigado