Desenho de um quadrado ou retângulo. Realmente precisam de ajuda... - página 8

 
evillive:

Dei um exemplo de roteiro de trabalho, precisamos adicionar setas e linhas de tendência a ele, e refazê-lo para H4 em vez de mês. Tudo o que você precisa fazer é se afastar do conceito de indicador e olhar para o problema de um ângulo diferente.

Esta linha foi tirada do roteiro. O roteiro é muito útil. Obrigado.

A linha de tendência é traçada para todo o período, mas em linha reta. Preciso de uma moca e uma moca. "Cerca".

        ObjectCreate    (0,Name_Obj + " V_Line" + DoubleToStr(i,0), OBJ_TREND, 0, t_Line, mqlRates[0].high, t_Line,mqlRates[0].low);
 
AlexeyVik:

Ler a ajuda é o que ajuda você a aprender a linguagem de programação. Então, se você não entender nada na ajuda, você pode fazer perguntas.

Como você pode aconselhar uma pessoa que não leu a documentação e não tem idéia de onde colocar SetIndexStyle(0, DRAW_SECTION); e inseri-la na OnCalculate com perplexidade?

Sem experiência, é por isso que você comete erros bobos.

Como diz Kiyosaki. Primeiro cometa um erro e depois o analise. Para entender o que foi feito de errado.

 
Alex_Profit:

Esta linha foi tirada do roteiro. O roteiro é muito útil. Obrigado.

A linha de tendência é traçada para todo o período, mas em linha reta. Preciso de uma moca e uma moca. "Cerca" é.

Pense, cabeça, eu lhe darei uma torta ))))

Aqui está noOBJ_TRENDe precisa ler a ajuda. Que linha deve ser obtida se o horário em ambos os pontos for o mesmo?

E não, este não é o meu roteiro.

 
evillive:

Este é oOBJ_TRENDe a ajuda deve ser lida, como e o que está lá. Qual linha deve ser obtida se o horário em ambos os pontos for o mesmo?

Uma linha reta, respectivamente.

Não entendo como encontrar o segundo ponto de ancoragem. Onde inseri-lo também é claro.

 

Obrigado por isso também. Você tem sido uma grande ajuda. É só uma pena que eu não tenha conseguido entender tudo, não há muito o que fazer.

De qualquer forma, obrigado por sua capacidade de resposta. Tenha mais lucros e tenha um bom fim de semana.

 

Boa tarde a todos. Estou pedindo a ajuda dos especialistas. Eu tenho este código.

Favor informar o que deve ser corrigido para garantir que a linha de tendência seja traçada nos máximos do TF diário.

Eu realmente preciso disso. Por favor, ajude.

#property indicator_chart_window
#property strict
extern int   limit = 30;
extern bool  Sho_bars = true;
string txt = "TRADE_";
//+------------------------------------------------------------------+
int init()
  {
   return(0);
  }
//+------------------------------------------------------------------+
int deinit()
  {
   GetDellName (txt);
   Comment("");
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int limits;
   int counted_bars=IndicatorCounted();   
   if(counted_bars<0) return(-1);
   if(counted_bars>0) counted_bars--;
   limits = Bars-counted_bars;        
//----
   if(limits>0)                      
   {
    for(int i=limit; i>=0; i--)
    {
     double   _High      = iHigh(Symbol(), 1440,i);   
     double   _Low       = iLow(Symbol(),  1440,i);   
     double   _Open      = iOpen(Symbol(), 1440,i);   
     double   _Close     = iClose(Symbol(),1440,i);                
     datetime _Time_Open = iTime(Symbol(), 1440,i);      // Открытие бара
     //datetime _start_day = 11*60*60;                   // Начало дня  
     datetime _End_Day   = 1440*60;                      // Конец дня 
       
     string   _Time_Open_txt  = TimeToStr(_Time_Open,TIME_DATE ); // Преобразуем время открытия в строку   
     if(Sho_bars)
      {
       // Функция рисующая объекты на графике
       TrendLineGraff(txt + _Time_Open_txt +" start_day",_Time_Open,_High,_Time_Open,_Low);                      // левая граница     
       TrendLineGraff(txt + _Time_Open_txt +" End_Day",_Time_Open + _End_Day,_High,_Time_Open + _End_Day, _Low); // правая граница           
       TrendLineGraff(txt + _Time_Open_txt +" High",_Time_Open,_High,_Time_Open + _End_Day,_High);               // верхняя граница  
       TrendLineGraff(txt + _Time_Open_txt +" Low",_Time_Open,_Low,_Time_Open + _End_Day,_Low);                  // нижняя граница      
       
       TrendLineGraff(txt + _Time_Open_txt + " T_Line", _Time_Open, _Open, _Time_Open + _End_Day, _Close);
      }          
   }
 }  
   return(0);
  }
//+------------------------------------------------------------------+
//| Функция отображения трендовой линии                              |
//+------------------------------------------------------------------+
 void TrendLineGraff(string labebe,datetime time1,double price1,datetime time2,double price2)
  {
   if (ObjectFind(labebe)!=-1) ObjectDelete(labebe);
   ObjectCreate(labebe, OBJ_TREND, 0,time1,price1,time2,price2);
   ObjectSet(labebe, OBJPROP_COLOR,clrDarkOrchid);
   ObjectSet(labebe, OBJPROP_STYLE,0);
   ObjectSet(labebe, OBJPROP_RAY,0);
   ObjectSet(labebe, OBJPROP_BACK, true);
  }
//+------------------------------------------------------------------+
//| Функция удаляет объекты                                          |
//+------------------------------------------------------------------+

 void GetDellName (string name_n = "ytg_")
  {
   string vName;
   for(int i=ObjectsTotal()-1; i>=0;i--)
    {
     vName = ObjectName(i);
     if (StringFind(vName,name_n) !=-1) ObjectDelete(vName);
    }  
  }
//+------------------------------------------------------------------+
 
Alex_Profit:

Boa tarde a todos. Estou pedindo a ajuda dos especialistas. Eu tenho este código.

Favor informar o que deve ser corrigido para garantir que a linha de tendência seja traçada nos máximos do TF diário.

Eu realmente preciso disso. Por favor, ajude.

Ao trabalhar com dados do TF de outro, as barras devem ser calculadas a partir desse. Mas esta lição não adianta...

iBars()!!!

E ao invés de excluir objetos, podemos dar a todos os objetos um prefixo único (neste caso é"TRADE_") e excluí-los todos de uma só vez na função ObjectsDeleteAll().

Aqui está: datetime _End_Day = 1440*60;// Fim do dia - nãoé nada "Fim do dia", é dois meses depois )))) O valor "final do dia" não é necessário, porque é o início do dia seguinte e o indicador desenha a linha lá de qualquer maneira.

 
evillive:

Ao trabalhar com dados de outro TF, as barras também devem ser calculadas a partir desse TF. Mas a lição não é útil...

iBars()!!!

Sinto muito. Mas eu ainda não entendo. Posso simplesmente consertá-lo no código?

E como um exemplo também. É sempre mais fácil com exemplos.

Eu realmente preciso disso. Obrigado.

 
Alex_Profit:

Sinto muito por isso. Mas eu ainda não entendo. Podemos simplesmente consertá-lo no código?

E, como exemplo, também. É sempre mais fácil com exemplos.

Eu realmente preciso disso. Obrigado.

Então, qual é o resultado? Funcionou?
Razão: