Qualquer pergunta de novato, de modo a não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 6. - página 345

 
Olá a todos! Como escrever uma EA para abrir várias ordens pendentes simultaneamente em ambas as direções com a mesma sl e tp diferente.
 

Pergunta para você. Minha conta não abre no meu telefone. Abre no meu computador, mas no meu telefone diz ativação errada.

 
Vinin:

Você deve fazer o ciclo de trás para frente. Você está usando dados antigos.

Aprendi a colocar bandeiras, mas ainda não sou muito bom com ciclos.

Tentei como aconselhado abaixo.

Ainda não preenche as seções. O que poderia estar errado?


int start()
  {
    int counted_bars=IndicatorCounted(),                      
    limit;
    double
    raznica,raznica_static,MA_1_t,MA_2_t;
    
  if(counted_bars>0)
      counted_bars--;
   limit=Bars-counted_bars;
   static double MA_otshet;  //здесь хранится информация по MA_otshet
   for (int i=limit-1; i>=0; i--)
   {  
      MA_1_t=iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,i+0);  
      MA_2_t=iMA(NULL,0,7,0,MODE_EMA,PRICE_CLOSE,i+1); 
      raznica=MA_1_t-MA_2_t; //разница между сегодня и вчера по скользящей средней
      raznica_static=MA_1_t-MA_otshet; //разница между сегодня и MA_otshet
      RefreshRates();   
      if(raznica > -0.003 && raznica < 0.003 && flag) // если raznica не превышает заданное число 
          {
          MA_otshet=MA_2_t; // записываем значение MA_otshet
          ExtMapBuffer1[i]=MA_otshet; //рисуем значение индикатора, как и вчера
          flag=false; // устанавливаем флаг запрета дальнейших расчетов
          }
      if(raznica_static > -0.003 && raznica_static < 0.003) //если raznica_static не превышает заданное число
          {
          ExtMapBuffer1[i]=MA_otshet;  // то рисуем значение индикатора, как записанный MA_otshet
          }
      if((raznica > 0.003) || (raznica < -0.003)) // если raznica превышает заданное число
          {
          ExtMapBuffer1[i]=MA_1_t; // то рисуем значение по текущей цене
          flag=true; // разрешаем дальнейшие вычисления для расчета в диапазоне от -0.0035 до 0.0035
          }
   }  
   return(0);
  }
//+------------------------------------------------------------------+
 
Forexman77:

Aprendi a colocar bandeiras, mas ainda não sou muito bom com ciclos.

Você pode me dizer aproximadamente como fazer isso?



 
int    i, k=OrdersTotal();
 
  for (i=0; i<k; i++) // Прямая
     {
     }

  for (i=k-1; i>=0; i--) // наоборот
     {
     }
 
thinker7:
Olá a todos! Como escrever um EA para abrir várias ordens pendentes simultaneamente em ambas as direções com a mesma sl e tp diferente.
Tente parar de usar AccountBalans e obter lucro usando AccountFreeMargin.
 

Olá! Você pode me dizer o que está errado aqui? Isso não coloca os limites.

double SL1 = High [iHighest (Symbol(),0,MODE_HIGH,3,1)];

OrderSend (Symbol(),OP_SELL,Lot,Bid,SL1,0,0,"",Magic,0,Blue);


 
questão esclarecida)
 

Eu não sei quem inventou a matemática. O diabo provavelmente o fez. Definitivamente, não é minha ciência.

Você pode me dar uma dica, por favor, se você é bom nisso? Preciso derivar um relacionamento da tabela abaixo. Não consigo elaborar uma fórmula para a dependência do lote em relação ao incremento do depósito em porcentagem:

2000+00% = 2000/2000=1.0 ---> 0.01
2000+10% = 2200/2000=1.1 ---> 0.02
2000+20% = 2400/2000=1.2 ---> 0.03
2000+30% = 2600/2000=1.3 ---> 0.04
2000+40% = 2800/2000=1.4 ---> 0.05
2000+50% = 3000/2000=1.5 ---> 0.06
2000+60% = 3200/2000=1.6 ---> 0.07
2000+70% = 3400/2000=1.7 ---> 0.08
2000+80% = 3600/2000=1.8 ---> 0.09
2000+90% = 3800/2000=1.9 ---> 0.10
2000+100% = 4000/2000=2.0 ---> 0.11
2000+110% = 4200/2000=2.1 ---> 0.12
2000+120% = 4400/2000=2.2 ---> 0.13
2000+130% = 4600/2000=2.3 ---> 0.14
2000+140% = 4800/2000=2.4 ---> 0.15
2000+150% = 5000/2000=2.5 ---> 0.16

E assim por diante. Os olhos vêem, mas a fórmula não pode fazer. Eu fiquei acordado a noite toda. A lógica não quer fazer. Ajude-me aqui.

 
artmedia70:

Eu não sei quem inventou a matemática. O diabo provavelmente o fez. Definitivamente, não é minha ciência.

Você pode me dar uma dica, por favor, se você é bom nisso? Preciso derivar um relacionamento da tabela abaixo. Não consigo elaborar uma fórmula para a relação entre o crescimento do lote e o crescimento do depósito como uma porcentagem:

2000+00% = 2000/2000=1.0 ---> 0.01
2000+10% = 2200/2000=1.1 ---> 0.02
2000+20% = 2400/2000=1.2 ---> 0.03
2000+30% = 2600/2000=1.3 ---> 0.04
2000+40% = 2800/2000=1.4 ---> 0.05
2000+50% = 3000/2000=1.5 ---> 0.06
2000+60% = 3200/2000=1.6 ---> 0.07
2000+70% = 3400/2000=1.7 ---> 0.08
2000+80% = 3600/2000=1.8 ---> 0.09
2000+90% = 3800/2000=1.9 ---> 0.10
2000+100% = 4000/2000=2.0 ---> 0.11
2000+110% = 4200/2000=2.1 ---> 0.12
2000+120% = 4400/2000=2.2 ---> 0.13
2000+130% = 4600/2000=2.3 ---> 0.14
2000+140% = 4800/2000=2.4 ---> 0.15
2000+150% = 5000/2000=2.5 ---> 0.16

E assim por diante. Eu posso ver com meus olhos, mas não posso inventar uma fórmula. Fiquei acordado a noite toda. Eu não quero usar lógica. Por favor, me ajude.

De alguma forma.
Arquivos anexados:
 
Como código:
//+---------------------------------------------------------+
#janela_indicadora de propriedade_separarate_window
#property indicator_buffers 1
#código de propriedade_cores1 azul
duplo Buf_0[];
int init()
{
SetIndexBuffer(0,Buf_0);
SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,3);
}
retornar;
int start()
{
duplo A, B;
bool C;
A = 1;
B = 3;
C = A + B;

retornar; }

//+---------------------------------------------------------+

Como eu atribuo o buffer à saída de linha?

Razão: