Talvez você deva especificar com o que você quer acabar
No exemplo acima, a linha é traçada utilizando o buffer indicador ao longo de todo o histórico. Deve ser limitado apenas às últimas 20 barras. Ou seja, quando uma nova barra aparece, a linha é estendida para a direita e encurtada para a esquerda, de modo que seu comprimento seja sempre igual a 20 barras.
Não entendo totalmente o que estou escrevendo no código, mas continuo vendo o mesmo número na tela, embora quando movo o cursor para a linha, eu veja os graus mudarem.
Esta função define o objeto OBJ_TRENDBYANGLE pelo ângulo de inclinação no gráfico atual. cl - Cor do objeto TRENDBYANGLE. Parâmetro necessário. nm - Nome do objeto. Quando o valor padrão é passado - "", o tempo aberto da barra atual é usado como o nome. t1 - Primeira coordenada do tempo de ajuste do objeto. Valor padrão - 0 - tempo de abertura da décima barra. p1 - Primeira coordenada do objeto que fixa o preço. Valor padrão - 0 - mínimo da décima barra. t2 - Segunda coordenada do tempo de ajuste do objeto. Valor padrão - 0 - tempo de abertura da barra atual. p2 - Segunda coordenada do objeto que fixa o preço. Este parâmetro é uma espécie de interruptor. Seu valor não zero iguala esta função ao SetTLine(), ou seja, uma linha de tendência será desenhada usando o par de coordenadas tempo/preço, enquanto o valor do ângulo de inclinação da linha de tendência será ignorado. Valor padrão - 0 - construção de linha de tendência por ângulo de inclinação. an - Ângulo de inclinação em graus. Valor padrão - 0 - Linha horizontal. ry - Bandeira da propriedade BOW. O valor padrão é Falso. st - Estilo de linha. Os valores válidos são STYLE_SOLID (padrão), STYLE_DASH, STYLE_DOT, STYLE_DASHDOT. wd - Largura da linha. O valor padrão é 1.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 12.10.2007 |//| Описание : Установка объекта OBJ_TRENDBYANGLE трендовая линия по углу |//+----------------------------------------------------------------------------+//| Параметры: |//| cl - цвет линии |//| nm - наименование ( "" - время открытия текущего бара) |//| t1 - время открытия бара ( 0 - Time[10] |//| p1 - ценовой уровень ( 0 - Low[10]) |//| t2 - время открытия бара ( 0 - время открытия текущего бара) |//| p2 - ценовой уровень ( 0 - по углу) |//| an - угол ( 0 - по умолчанию) |//| ry - луч (False - не луч) |//| st - стиль линии ( 0 - простая линия) |//| wd - ширина линии ( 1 - по умолчанию) |//+----------------------------------------------------------------------------+void SetTLineByAngle(color cl, string nm="",
datetime t1=0, double p1=0, datetime t2=0, double p2=0,
double an=0, bool ry=False, int st=0, int wd=1) {
if (nm=="") nm=DoubleToStr(Time[0], 0);
if (t1<=0) t1=Time[10];
if (p1<=0) p1=Low[10];
if (t2<=0) t2=Time[0];
if (ObjectFind(nm)<0) ObjectCreate(nm, OBJ_TRENDBYANGLE, 0, 0,0);
ObjectSet(nm, OBJPROP_TIME1 , t1);
ObjectSet(nm, OBJPROP_PRICE1, p1);
ObjectSet(nm, OBJPROP_TIME2 , t2);
if (p2>0) ObjectSet(nm, OBJPROP_PRICE2, p2);
else ObjectSet(nm, OBJPROP_ANGLE, an);
ObjectSet(nm, OBJPROP_COLOR, cl);
ObjectSet(nm, OBJPROP_RAY , ry);
ObjectSet(nm, OBJPROP_STYLE, st);
ObjectSet(nm, OBJPROP_WIDTH, wd);
}
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Tampões indicadores, pois no futuro a solução não será usada apenas para linhas retas, mas também para linhas médias móveis e outros tipos de linhas.
Talvez você possa especificar com o que você quer acabar
Eu quero medir a inclinação do meio e mostrar como -35 graus
O que é -35° no gráfico? E se a escala mudar?
Talvez você deva especificar com o que você quer acabar
No exemplo acima, a linha é traçada utilizando o buffer indicador ao longo de todo o histórico.
Deve ser limitado apenas às últimas 20 barras. Ou seja, quando uma nova barra aparece, a linha é estendida para a direita e encurtada para a esquerda, de modo que seu comprimento seja sempre igual a 20 barras.
Não entendo totalmente o que estou escrevendo no código, mas continuo vendo o mesmo número na tela, embora quando movo o cursor para a linha, eu veja os graus mudarem.
ObjectDelete("TremdLineAverage");
ObjectCreate("TremdLineAverage", OBJ_TRENDBYANGLE,0,0,0,0,0,0,0); // ------------------------- coordenadas trendline 2
ObjectSet ("TremdLineAverage", OBJPROP_WIDTH, HirinaUgolAverage); // ---------------------------------------- Largura
ObjectSet ("TremdLineAverage", OBJPROP_COLOR, colUgolAverage); // --------------------------------------------- Cor
ObjectSet ("TremdLineAverage", OBJPROP_TIME1 ,Time[1]); // ------------------------------- 1 coordenada de tempo
ObjectSet ("TremdLineAverage", OBJPROP_TIME2 ,Time[0]); // ------------------------------- 1 coordenada de tempo
ObjectSet ("TremdLineAverage", OBJPROP_PRICE1,UgolAverage1_1); // ----------------------------- 1 coordenada de preço
ObjectSet ("TremdLineAverage", OBJPROP_PRICE2,UgolAverage1_0); // ----------------------------- 2 coordenadas de preço
ObjectSet ("TremdLineAverage", OBJPROP_RAY, 15); Ugol=15;
ObjectCreate("TremdLineAverage", OBJ_TRENDBYANGLE,0,0,0,0,0,0,0); // ------------------------- coordenadas trendline 2
ObjectSet ("TremdLineAverage", OBJPROP_WIDTH, HirinaUgolAverage); // ---------------------------------------- Largura
ObjectSet ("TremdLineAverage", OBJPROP_COLOR, colUgolAverage); // --------------------------------------------- Cor
ObjectSet ("TremdLineAverage", OBJPROP_TIME1 ,Time[1]); // ------------------------------- 1 coordenada de tempo
ObjectSet ("TremdLineAverage", OBJPROP_TIME2 ,Time[0]); // ------------------------------- 1 coordenada de tempo
ObjectSet ("TremdLineAverage", OBJPROP_PRICE1,UgolAverage1_1); // ----------------------------- 1 coordenada de preço
ObjectSet ("TremdLineAverage", OBJPROP_PRICE2,UgolAverage1_0); // ----------------------------- 2 coordenadas de preço
ObjectSet ("TremdLineAverage", OBJPROP_ANGLE, 15); Ugol=15;
Obrigado por seu feedback.
Uma função já feita, experimente-a.
A função SetTLineByAngle().
Esta função define o objeto OBJ_TRENDBYANGLE pelo ângulo de inclinação no gráfico atual.
cl - Cor do objeto TRENDBYANGLE. Parâmetro necessário.
nm - Nome do objeto. Quando o valor padrão é passado - "", o tempo aberto da barra atual é usado como o nome.
t1 - Primeira coordenada do tempo de ajuste do objeto. Valor padrão - 0 - tempo de abertura da décima barra.
p1 - Primeira coordenada do objeto que fixa o preço. Valor padrão - 0 - mínimo da décima barra.
t2 - Segunda coordenada do tempo de ajuste do objeto. Valor padrão - 0 - tempo de abertura da barra atual.
p2 - Segunda coordenada do objeto que fixa o preço. Este parâmetro é uma espécie de interruptor. Seu valor não zero iguala esta função ao SetTLine(), ou seja, uma linha de tendência será desenhada usando o par de coordenadas tempo/preço, enquanto o valor do ângulo de inclinação da linha de tendência será ignorado. Valor padrão - 0 - construção de linha de tendência por ângulo de inclinação.
an - Ângulo de inclinação em graus. Valor padrão - 0 - Linha horizontal.
ry - Bandeira da propriedade BOW. O valor padrão é Falso.
st - Estilo de linha. Os valores válidos são STYLE_SOLID (padrão), STYLE_DASH, STYLE_DOT, STYLE_DASHDOT.
wd - Largura da linha. O valor padrão é 1.