Você poderia por favor postar algum código com contexto já que meu código continua a retornar um ângulo de 0? Por exemplo, encontre o ângulo de SMA 50 em 10 períodos.
jretzloff: Você poderia por favor postar algum código com contexto já que meu código continua a retornar um ângulo de 0? Por exemplo, encontre o ângulo de SMA 50 em 10 períodos.
Por que você não coloca seu código continua a retornar um ângulo de 0 para que outros o ajudem?
jretzloff: Você poderia por favor postar algum código com contexto já que meu código continua a retornar um ângulo de 0? Por exemplo, encontre o ângulo de SMA 50 em 10 períodos.
:) por que você não postar seu código continua a retornar um ângulo de 0 para que outros o ajudem ?
Basicamente, porque está cheio de porcarias com as quais tenho tentado fazê-lo trabalhar... cheio de declarações impressas, etc. É um hack total para tentar testar o cálculo para um possível uso na visualização posterior. De qualquer forma, aqui está ele:
NÃO precisa de tantos cdes! Em você cade: MathArctan(MathTan(((price1-price2)/(WindowPriceMax()- WindowPriceMin()))/((SignalPeriod-0.0)/WindowBarsPerChart())))*180/3.14;
Qual é o significado de "SignalPeriod" e por quê?
Geralmente, um ângulo é a realidade entre uma linha e X eixos, essa linha é definida por dois pontos. Em seu cálculo, preço2 e preço1 são dois valores na mesma coordenada X,
Na minha fórmula, use (delt Y) / (delt X) para calcular o ângulo : MathArctan(MathTan( ((price1-price2)/(WindowPriceMax()- WindowPriceMin())) // é delt Y / ((shift2-shift1)/WindowBarsPerChart()) // é delt X )) *180/3.14
quais seriam os valores para shift1 e shift2? ou de onde são calculados? sei que este tem sido meu problema, mas não entendo como aplicar com a média móvel.
aqui, um ângulo é a realição entre uma linha e eixos X, uma linha é definida por dois pontos. (preço1,turno1), (preço2,turno2) são que dois pontos de coordenadas. turno igual a x em seu código. --------------------------------------------------- outras palavras, se você precisar calcular o ângulo de duas linhas quaisquer, você precisa de 3 ou 4 pontos (duas linhas precisam de 3 ou 4 pontos para definir), e precisa de mais conhecimento das funções trigonométricas. de seu código , acho que você quer calcular o ângulo de duas linhas quaisquer (como duas linhas de MACD), e não o ângulo de uma linha e eixos X. Então você precisa de 3 ou 4 pontos , deve rever mais conhecimento das funções trigonométricas, talvez a lei de cossines.
ou , 1º , calcular cada ângulo de uma das linhas e eixos X, 2º , sua diferença é o ângulo dessas duas linhas .
obrigado por sua resposta, estou apenas tentando calcular o ângulo de uma única linha, ou seja, uma média móvel e o eixo x. sei o suficiente sobre trigonometria para realizar os cálculos, mas não com o que está disponível através do MT.
muito simplesmente, gostaria de calcular o ângulo atual do MA no turno 0 com o segundo ponto de referência sendo o MA no período do SinalPeriodo ou MA em ? barras mais cedo. o outro ponto de referência seria o interseção do turno 0 y e o SignalPeriodo x.
Em caso afirmativo, o preço2 deve mudar para : price2 = iMA(Symbol(),0,MAPeriod,0, MODE_SMA,PRICE_CLOSE,SignalPeriod);
X coordenada (SignalPeriod) deve ser o último parâmetro da função iMA(....), não 4o parather. (4º parather: ma_shift é outro significado, não usá-lo, exceto que você sabe o que é !!!!) Agora Ok, tente novamente!
Você poderia por favor postar algum código com contexto já que meu código continua a retornar um ângulo de 0? Por exemplo, encontre o ângulo de SMA 50 em 10 períodos.
Você poderia por favor postar algum código com contexto já que meu código continua a retornar um ângulo de 0? Por exemplo, encontre o ângulo de SMA 50 em 10 períodos.
Basicamente, porque está cheio de porcarias com as quais tenho tentado fazê-lo trabalhar... cheio de declarações impressas, etc. É um hack total para tentar testar o cálculo para um possível uso na visualização posterior. De qualquer forma, aqui está ele:
NÃO precisa de tantos cdes!
Em você cade:
MathArctan(MathTan(((price1-price2)/(WindowPriceMax()- WindowPriceMin()))/((SignalPeriod-0.0)/WindowBarsPerChart())))*180/3.14;
Qual é o significado de "SignalPeriod" e por quê?
Geralmente, um ângulo é a realidade entre uma linha e X eixos, essa linha é definida por dois pontos.
Em seu cálculo, preço2 e preço1 são dois valores na mesma coordenada X,
Na minha fórmula, use (delt Y) / (delt X) para calcular o ângulo :
MathArctan(MathTan(
((price1-price2)/(WindowPriceMax()- WindowPriceMin())) // é delt Y
/
((shift2-shift1)/WindowBarsPerChart()) // é delt X
))
*180/3.14
quais seriam os valores para shift1 e shift2? ou de onde são calculados? sei que este tem sido meu problema, mas não entendo como aplicar com a média móvel.
uma linha é definida por dois pontos.
(preço1,turno1), (preço2,turno2) são que dois pontos de coordenadas. turno igual a x em seu código.
---------------------------------------------------
outras palavras, se você precisar calcular o ângulo de duas linhas quaisquer, você precisa de 3 ou 4 pontos (duas linhas precisam de 3 ou 4 pontos para definir), e precisa de mais conhecimento das funções trigonométricas.
de seu código , acho que você quer calcular o ângulo de duas linhas quaisquer (como duas linhas de MACD), e não o ângulo de uma linha e eixos X.
Então você precisa de 3 ou 4 pontos , deve rever mais conhecimento das funções trigonométricas, talvez a lei de cossines.
ou , 1º , calcular cada ângulo de uma das linhas e eixos X, 2º , sua diferença é o ângulo dessas duas linhas .
obrigado por sua resposta, estou apenas tentando calcular o ângulo de uma única linha, ou seja, uma média móvel e o eixo x. sei o suficiente sobre trigonometria para realizar os cálculos, mas não com o que está disponível através do MT.
muito simplesmente, gostaria de calcular o ângulo atual do MA no turno 0 com o segundo ponto de referência sendo o MA no período do SinalPeriodo ou MA em ? barras mais cedo. o outro ponto de referência seria o interseção do turno 0 y e o SignalPeriodo x.
price2 = iMA(Symbol(),0,MAPeriod,0, MODE_SMA,PRICE_CLOSE,SignalPeriod);
X coordenada (SignalPeriod) deve ser o último parâmetro da função iMA(....), não 4o parather. (4º parather: ma_shift é outro significado, não usá-lo, exceto que você sabe o que é !!!!)
Agora Ok, tente novamente!