EA: Questões Diversas - Estratégia Comercial - página 2

 
Marco vd Heijden:

Sim, em um loop de seleção de pedidos, use o filtro:

E não esqueça de zerá-lo para 0 quando fizer outra verificação, caso contrário, ele dobrará.
Na verdade eu já tentei OrderSymbol() == Symbol() um pouco diferente.
Vou tentar em breve, muito obrigado por sua resposta rápida.
 
Marco vd Heijden:

Sim, em um loop de seleção de pedidos, use o filtro:

E não se esqueça de zerá-lo para 0 quando fizer outra verificação, caso contrário, ele dobrará.

Desculpe, quer dizer como aquele?

O método abaixo não funciona para mim.

int orders = 0;
for( int i = OrdersTotal() - 1; i >= 0; i-- )
{
    if( ! OrderSelect( i, SELECT_BY_POS, MODE_TRADES ) ) continue;

    if( OrderSymbol() == Symbol() )
    {
        Print( "count orders: ", orders );
        orders++;
    }
}

---

Meu propósito é, se as ordens do símbolo do gráfico forem iguais a 0 ( zero ), então faça algo de outra forma pule isto se();

if( Chart symbol order == 0 ) // I can't get correct counts for Chart Symbol Orders
{
  // calculate something
  // check something for Sell
  // check something for Buy
  // ...
}

Obrigado de antemão.

 
Max Enrik: O método abaixo não funciona para mim.
"Não funciona" não faz sentido - assim como dizer que o carro não funciona. Não arranca, não entra em marcha, não é elétrico, falta a chave, pneus furados -meaningless. Não há leitores de mentes aqui.
 
whroeder1:
"Não funciona" não faz sentido - assim como dizer que o carro não funciona. Não arranca, não entra em marcha, não é elétrico, falta a chave, pneus furados -meaningless. Não há leitores de mentes aqui.

Sim, não funciona para mim.
Eu uso essa parte do código para minhas funções de Ordem Aberta Fechada sem nenhum problema.

Mas agora eu preciso fazer a contagem dos símbolos do mapa de ordens abertas. Essa parte do código não funcionou para o meu propósito. Que eu obviamente mencionei com o código abaixo.

if( Chart symbol order == 0 ) // I can't get correct counts for Chart Symbol Orders / I meant I do not know how can I get counts of Chart Symbol Orders.
{
  // ...
}
 

é a abordagem certa, então você deve ser capaz de fazer com que funcione se os pedidos permanecerem zero

int orders = 0;
for( int i = OrdersTotal() - 1; i >= 0; i-- )
{
    if( ! OrderSelect( i, SELECT_BY_POS, MODE_TRADES ) ) continue;

    if( OrderSymbol() == Symbol() )
    {
        Print( "count orders: ", orders );
        orders++;
    }
}

if( orders == 0 ) // I can't get correct counts for Chart Symbol Orders
{
  // calculate something
  // check something for Sell
  // check something for Buy
  // ...
}
 
Marco vd Heijden:

é a abordagem certa, então você deve ser capaz de fazer com que funcione se os pedidos permanecerem zero


Depois que eu pouco mudei, então funciona para mim agora.

Muito obrigado, Sr. Marco.

 

Primeiro meus 2 pedidos automatizados receberam 50 pips ambos 100 pips. Sl e Tp foram 50/50 ( proporção 1:1 )

Incrível! Estratégia comercial simples e melhor - bom para melhorá-la.

aeas
 

Estou tentando usar o código abaixo para as horas de negociação da EA, que somente a EA Trading tem horas específicas. Mas a EA Trading funciona às 23 horas.

P: O que eu perdi para o Horário de Negociação, por favor?

void OnTick()
{
    // below trading Hours just for example
    if( Hour() >= 10 && Hour() < 12 ) return;

    Runs();
    //---
    return;
}

Fórum sobre negociação, sistemas de negociação automatizados e teste de estratégias de negociação

Somente comércio durante as horas de mercado (Ásia, Reino Unido, Reino Unido/EUA)

whroeder1, 2012.05.03 18:41

  1.  if(Hour()>=0 && Hour()<22)
    // if(Hour()>=0 && Hour()<=22)
      {
       return(true);
      }
      else
      {
        return(false);
      }
    //// or Simplify ///
    return( Hour()>=0 && Hour()<22 );

  2. Se você quer dizer código para permitir um intervalo, veja meu código

Estou trabalhando nisso, ajude-me, por favor.

 
Max Enrik:

Mas a EA Trading funciona às 23 horas.

P: O que eu perdi no Trading Hours, por favor?

Estou trabalhando nisso, ajude-me, por favor.

O que você está perdendo é que 10 <= 11 < 12
 
whroeder1:
O que está faltando é que 10 <= 11 < 12

Lamento não ter entendido.