Ajuda: Criação de um indicador no MetaStock!
9 mensagens
|Página 1 de 1
Já agora, vou por eu aqui uma pergunta a Dwer..
Como meto numa fórmula de uma média móvel
Exemplo:
If(Mov(C,26,E)>Ref(Mov(C,26,E),-1),1,0)
Os dados para que tenha um Horizontal Shift = 1
e um Price Field: High
Enquanto posso mudar isto facilmente numa média móvel já inserida no gráfico, construir uma função com estes dados é mais complicado e ainda não descobri a formula a usar para esses dados da média móvel.
Obrigado em avanço
Como meto numa fórmula de uma média móvel
Exemplo:
If(Mov(C,26,E)>Ref(Mov(C,26,E),-1),1,0)
Os dados para que tenha um Horizontal Shift = 1
e um Price Field: High
Enquanto posso mudar isto facilmente numa média móvel já inserida no gráfico, construir uma função com estes dados é mais complicado e ainda não descobri a formula a usar para esses dados da média móvel.
Obrigado em avanço
Ora bem
Tendo em conta as fórmulas da Equis temos:
EMA26 Semanal Ascendente:
EMA26:=Mov(If(DayOfWeek( )=5,C,Peak(1,If(DayOfWeek( )=5,C,0),1)),130,S); Reparar que 130=26 semanas (26*5)
SlopeEMA26:=LinRegSlope(EMA26,2);
EMA26SemanalAscendente:=if(SlopeEMA26>0,1,0);
Histograma Semanal Ascendente:
Calcular a EMA12 semanal:
EMA12:=Mov(If(DayOfWeek( )=5,C,Peak(1,If(DayOfWeek( )=5,C,0),1)),60,S); Reparar que 130=26 semanas (26*5)
MACSemanal:=EMA12-EMA26;
SignalSemanal:=mov(MAC,9,e);
HistogramaSemanal:=MAC-Signal;
MACSemanal;SignalSemanal;HistogramaSemanal;
Temos o MACD semanal.
SlopeHistogramaSemanal:=LinRegSlope(HistogramaSemanal,2);
HistogramaSemanalAscendente:=if(SlopeHistogramaSemanal>0,1,0);
Tudos Ascendente:
if(EMA13Ascendente and HistogramaAscendente and EMA26SemanalAscendente and HistogramaSemanalAscendente,1,0);
Penso que é isto; de qq forma atenção que 5 não é sempre o último dia da semana. Se sexta for feriado o último dia da semana é 4.
Abraços,
EMA26 Semanal Ascendente:
EMA26:=Mov(If(DayOfWeek( )=5,C,Peak(1,If(DayOfWeek( )=5,C,0),1)),130,S); Reparar que 130=26 semanas (26*5)
SlopeEMA26:=LinRegSlope(EMA26,2);
EMA26SemanalAscendente:=if(SlopeEMA26>0,1,0);
Histograma Semanal Ascendente:
Calcular a EMA12 semanal:
EMA12:=Mov(If(DayOfWeek( )=5,C,Peak(1,If(DayOfWeek( )=5,C,0),1)),60,S); Reparar que 130=26 semanas (26*5)
MACSemanal:=EMA12-EMA26;
SignalSemanal:=mov(MAC,9,e);
HistogramaSemanal:=MAC-Signal;
MACSemanal;SignalSemanal;HistogramaSemanal;
Temos o MACD semanal.
SlopeHistogramaSemanal:=LinRegSlope(HistogramaSemanal,2);
HistogramaSemanalAscendente:=if(SlopeHistogramaSemanal>0,1,0);
Tudos Ascendente:
if(EMA13Ascendente and HistogramaAscendente and EMA26SemanalAscendente and HistogramaSemanalAscendente,1,0);
Penso que é isto; de qq forma atenção que 5 não é sempre o último dia da semana. Se sexta for feriado o último dia da semana é 4.
Abraços,
Abraço,
Dwer
There is a difference between knowing the path and walking the path
Dwer
There is a difference between knowing the path and walking the path
Não sei se irá ajudar, mas a resposta que o site da Equis dá pra isso é...
http://www.equis.com/Support/Formulae.aspx?Id=41
e ...
http://www.equis.com/Support/Formulae.aspx?Id=32
Mas combinar isto com o que quero fazer é mais complicado.
http://www.equis.com/Support/Formulae.aspx?Id=41
e ...
http://www.equis.com/Support/Formulae.aspx?Id=32
Mas combinar isto com o que quero fazer é mais complicado.
Oh pá....
Já ando com essa questão dos dados semanais há.... semanas. Para teres indicadores semanais ou tens dados com periodicidade semanal ou tens que calcular os valores da semana (open,high,low,close).
O open é abertura do primeiro dia
o high e low são o high e o low de toda a semana
O close é o fecho do último dia
Problemas:
Nem o primeiro dia da semana é sempre segunda-feira nem o último é sempre sexta-feira, por causa dos feriados.
Depois de encontrar o primeiro e último dia da semana (com o qual temos imediatamente open e close) temos que calcular o high e o low entre estes dois dias. Não é de todo lana caprina.
Quanto aos outros indicadores é mais simples:
EMA13 diária ascendente:
EMA13:=mov(c,13,e);
SlopeEMA13:=linregslope(mov(c,13,e),2);
EMA13Ascendente:=if(SlopeEMA13>0,1,0);
MACD Diff ascendente (suponho que te refires ao histograma e que as emas sejam de 12 e 26 dias e o signal igual 9):
MAC:=mov(c,12,e)-mov(c,26,e);
Signal:=mov(MAC,Signal,9);
Histograma:=MAC-Signal;
HistogramaSlope:=linregslope(Histograma,2);
HistogramaAscendente:=If(HistogramaSlope>0,1,0)
O encadeamento do if seria qq coisa como isto:
if(EMA13Ascendente and HistogramaAscendente,1,0);
A isto haveria que acrescentar as condições para os valores semanais.
Espero ter ajudado.
Se resolveres a questão da ema e MACD semanais apita.
Abraço,



Problemas:


Quanto aos outros indicadores é mais simples:
EMA13 diária ascendente:
EMA13:=mov(c,13,e);
SlopeEMA13:=linregslope(mov(c,13,e),2);
EMA13Ascendente:=if(SlopeEMA13>0,1,0);
MACD Diff ascendente (suponho que te refires ao histograma e que as emas sejam de 12 e 26 dias e o signal igual 9):
MAC:=mov(c,12,e)-mov(c,26,e);
Signal:=mov(MAC,Signal,9);
Histograma:=MAC-Signal;
HistogramaSlope:=linregslope(Histograma,2);
HistogramaAscendente:=If(HistogramaSlope>0,1,0)
O encadeamento do if seria qq coisa como isto:
if(EMA13Ascendente and HistogramaAscendente,1,0);
A isto haveria que acrescentar as condições para os valores semanais.
Espero ter ajudado.
Se resolveres a questão da ema e MACD semanais apita.
Abraço,
Abraço,
Dwer
There is a difference between knowing the path and walking the path
Dwer
There is a difference between knowing the path and walking the path
Indicadores
Boa Tarde
Então é assim :
If(Mov(C,26,E)>Ref(Mov(C,26,E),-1),1,0)
Este indicador é para uma EMA de 26 dias. Para semanais tenho que ir procurar.
Se precisar de mais alguma explicação diga.
Abraço
CyberTrader
Então é assim :
If(Mov(C,26,E)>Ref(Mov(C,26,E),-1),1,0)
Este indicador é para uma EMA de 26 dias. Para semanais tenho que ir procurar.
Se precisar de mais alguma explicação diga.
Abraço
CyberTrader
CyberTrader
Ajuda: Criação de um indicador no MetaStock!
Desculpem maçar-vos com uma questão que para alguns será de "lana caprina", mas tenho andado à cabeçada com isto e está a ser difícil.
Queria construir um indicador no Metastock que fizesse isto:
Igual a 1 se :
- Ema26 semanal ascendente, e
- Ema13 diária ascendente, e
- MACD diff diário ascendente, e
- MACD diff semanal ascendente.
Igual a 0 se qualquer uma destas condições não se verificar.
Alguém pode ajudar?
Queria construir um indicador no Metastock que fizesse isto:
Igual a 1 se :
- Ema26 semanal ascendente, e
- Ema13 diária ascendente, e
- MACD diff diário ascendente, e
- MACD diff semanal ascendente.
Igual a 0 se qualquer uma destas condições não se verificar.
Alguém pode ajudar?
9 mensagens
|Página 1 de 1
Quem está ligado:
Utilizadores a ver este Fórum: danielme1962, Dar Adal, Ferreiratrade, Google [Bot], m-m, malakas, Manchini888, OCTAMA, silva_39, vasco007 e 280 visitantes