Exibição de texto em um gráfico
4 respostas
Paul
10 anos atrás #111323
Aqui está um código para exibir até 6 linhas de texto em um gráfico, o que é muito útil para exibir variáveis ao testar EAs ao vivo.
Copie e cole as linhas de ObjectCreate e as linhas correspondentes de ObjectSetText no campo Command da Custom Action.
Por exemplo, se você precisar de apenas duas linhas de texto, copie e cole ObjectCreate("Line1" e 2, e ObjectSetText("Line1 e 2, resultando em quatro comandos Custom Action.
Personalize os seguintes dados nas linhas do ObjectSetText:
"My Lable" é uma tabela de texto para os dados que você deseja exibir.
'my variable' é a variável cujos dados você deseja exibir.
Certifique-se de deixar a sintaxe do restante das linhas exatamente como mostrado.
A captura de tela em anexo deve esclarecer as coisas.
Abraço,
Paul
ObjectCreate("Line1", OBJ_LABEL, 0, 0 , 0); ObjectSet("Line1", OBJPROP_CORNER, 0); ObjectSet("Line1", OBJPROP_XDISTANCE, 10); ObjectSet("Line1", OBJPROP_YDISTANCE, 130);
ObjectCreate("Line2", OBJ_LABEL, 0, 0 , 0); ObjectSet("Line2", OBJPROP_CORNER, 0); ObjectSet("Line2", OBJPROP_XDISTANCE, 10); ObjectSet("Line2", OBJPROP_YDISTANCE, 150);
ObjectCreate("Line3", OBJ_LABEL, 0, 0 , 0); ObjectSet("Line3", OBJPROP_CORNER, 0); ObjectSet("Line3", OBJPROP_XDISTANCE, 10); ObjectSet("Line3", OBJPROP_YDISTANCE, 170);
ObjectCreate("Line4", OBJ_LABEL, 0, 0 , 0); ObjectSet("Line4", OBJPROP_CORNER, 0); ObjectSet("Line4", OBJPROP_XDISTANCE, 10); ObjectSet("Line4", OBJPROP_YDISTANCE, 190);
ObjectCreate("Line5", OBJ_LABEL, 0, 0 , 0); ObjectSet("Line5", OBJPROP_CORNER, 0); ObjectSet("Line5", OBJPROP_XDISTANCE, 10); ObjectSet("Line5", OBJPROP_YDISTANCE, 210);
ObjectCreate("Line6", OBJ_LABEL, 0, 0 , 0); ObjectSet("Line6", OBJPROP_CORNER, 0); ObjectSet("Line6", OBJPROP_XDISTANCE, 10); ObjectSet("Line6", OBJPROP_YDISTANCE, 230);
ObjectSetText("Line1", "My Lable 1: " + my variable 1, 10, "Arial", White);
ObjectSetText("Line2", "My Lable 2: " + my variable 2, 10, "Arial", White);
ObjectSetText("Line3", "My Lable 3: " + my variable 3, 10, "Arial", White);
ObjectSetText("Line4", "My Lable 4: " + my variable 4, 10, "Arial", White);
ObjectSetText("Line5", "My Lable 5: " + my variable 5, 10, "Arial", White);
ObjectSetText("Line6", "My Lable 6: " + my variable 6, 10, "Arial", White);
JS17
10 anos atrás #122023
Ótimo post, muito obrigado 🙂
Só uma pergunta rápida: sua postagem diz até 6 linhas, 6 linhas é um limite dentro da linguagem de programação?
Marca Fric
10 anos atrás #122090
Não, não há limite para o número de objetos de texto que você pode exibir.
Basta criar mais objetos de texto usando ObjectCreate() e, em seguida, definir seu valor usando ObjectSetText()
Marcar
EstratégiaQuant arquiteto
Brian Caudill
5 anos atrás #234676
Aqui está uma maneira fácil de adicionar quantos objetos você quiser ao gráfico
int n=8;//altere esse número para o número de objetos que você deseja criar
int distance_horizontal=10;//a localização horizontal
int distance_between_verticle=40;//a distância entre cada objeto
int top_offset = 100; //a que distância do topo você deseja começar a imprimir os objetos (se você não quiser que eles fiquem bem no topo do gráfico).
int text_color= clrAntiqueWhite; //a cor que você deseja que o texto nas caixas tenha
for(int i=0;i<n;i++){
ObjectCreate("Line "+i, OBJ_LABEL, 0, 0 , 0);
ObjectSet("Line "+i, OBJPROP_CORNER, 0);
ObjectSet("Line "+i, OBJPROP_XDISTANCE, distance_horizontal);
ObjectSet("Line "+i, OBJPROP_YDISTANCE, (distance_between_verticle * i)+ top_offset);
ObjectSetText("Line "+i, "My Lable "+i, 10, "Arial", White);
}
comerciante pegajoso
4 anos atrás #249063
Por exemplo, em vez de desenhar uma seta nos gráficos, imprima "Buy Signal" no teste de retorno.
Visualizando 4 respostas - 1 até 4 (de um total de 4)