[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 244

 

Falando sobre o fato de que em uma seqüência

lot = NormalizeDouble(...,   1 );

A normalização pode ter até dois dígitos (0,1,2).

 
Martingeil писал(а) >>

Se eu entendi corretamente, posso dar um passo - é por quanto do saldo será adicionado ao lote?

Ou você pretende ter uma curva constante de aumento de lote, mas eu não vejo o ponto em tal progressão.

extern double Maximum_Risk=5.0;
extern double lot=1.0;

//+------------------------------------------------------------------+
//|    РАССЧЕТ РАЗМЕРА ЛОТА                               
//+------------------------------------------------------------------+
double LotsOptimized() {
   double lots_min =MarketInfo(Symbol(),MODE_MINLOT);
   double lots_step=MarketInfo(Symbol(),MODE_LOTSTEP);
   double lots_max =MarketInfo(Symbol(),MODE_MAXLOT);

   double lot= Lot;   

   if ( Maximum_Risk>0){
      lot=MathCeil(AccountBalance()/ Maximum_Risk/100000/MODE_LOTSTEP)*MODE_LOTSTEP;

      lot=MathMax( lots_min, MathMin( lots_max, lot));
   }
   return( lot);
}
Algo como isto
 
OneDepo >> :

Falando sobre o que está na fila

A normalização pode ter até dois dígitos (0,1,2).

corrigido.

só que eu acho que eu quis dizer uma progressão constante de aumento de lote............

 
Martingeil >> :

Se houver negócios não rentáveis, então o lote será reduzido ao lote inicial.


É claro que MM é legal ;)

Eu só tenho dúvidas com meu código: em conta demo tudo está correto, e em conta real (micro conta em FXstart) parece ser 2 vezes menos.

É por isso que eu gostaria de saber como calcular corretamente as porcentagens a partir do AccountBalance().


P.S. Eu negocio manualmente com scripts, portanto não preciso de MM.

 

Olá!

Por favor, ajude-me com o código de erro.

O erro em si:

......\MetaTrader - Alpari\experts\indicators\signalTable_v1.mq4;114:1;'\end_of_program' - unbalanced left parenthesis

Entendo que 114 é uma linha e 1 lugar de personagem (mais precisamente, o próprio erro antes deste lugar de personagem).

Assim, após a compilação deste erro acontece. Aqui está um pedaço de código......

      // сигнал на покупку
      if(MathAbs(iWPR(Symbol(), period[ x],13,0))<20.0)
         ObjectSetText("signal"+ x+"1",CharToStr( symbolCodeBuy), fontSize,"Wingdings", signalBuyColor);
      // сигнал на продажу   
      else if(MathAbs(iWPR(Symbol(), period[ x],13,0))>80.0)
            ObjectSetText("signal"+ x+"1",CharToStr( symbolCodeSell), fontSize,"Wingdings", signalSellColor);
      // нет сигнала
      else     // как раз перед else и есть это злополучное ПЕРВОЕ знако-место
           ObjectSetText("signal"+ x+"1",CharToStr( symbolCodeNoSignal), fontSize,"Wingdings", noSignalColor);
Alguém pode me dar uma dica 9 Estou agradecido antecipadamente
 
Martingeil >> :

Não, não é assim que o algoritmo funciona.

cci_0< cci_1 && Bid-OrderOpenPrice() == Point* profit

de acordo com sua estratégia, a lógica aqui é correta.



A estratégia está errada.



Pelo menos é assim:







cci_0< cci_1 && Bid-OrderOpenPrice() >= Point*5 && Bid-OrderOpenPrice() <= Point*10



 

dica

Para OrderSelect é claro o que está escrito entre parênteses

Mas, por exemplo, para OrderCloseTime() ou OrderLots() - por que parênteses e o que pode ser escrito neles?

 
gramp >> :

dica

Para OrderSelect é claro o que está escrito entre parênteses

Mas, por exemplo, para OrderCloseTime() ou OrderLots() - por que parênteses e o que pode ser escrito neles?

Simplificando, os parênteses são uma característica que distingue as funções das variáveis.

Mas se for apenas para você mesmo, você pode escrever qualquer coisa:))))

 
igrok2008 >> :

Olá!

Por favor, ajude-me com o código de erro.

O erro em si:

Entendo que 114 é uma linha e 1 lugar de personagem (mais precisamente, o próprio erro antes deste lugar de personagem).

Assim, após a compilação deste erro acontece. Aqui está um pedaço de código......

Alguém pode me dar uma dica 9 Estou agradecido antecipadamente

Mais uma vez, o erro de parêntese esquerdo desequilibrado significa que os parênteses no código são desequilibrados, neste caso há menos parênteses de fechamento do que de abertura. O fato de o compilador se referir à linha 114 não significa nada, porque o compilador mql4 não consegue encontrar corretamente este erro no texto, na maioria das vezes se referindo ao final do arquivo, mas na verdade pode se referir a algum outro lugar de sua própria escolha. Portanto, a única opção para corrigir o erro é encontrar uma abertura extra ou parêntese de fechamento ausente. Volte três páginas, eu mostrei onde faltam parênteses em seu código.

 
Rapazes, por favor, avisem. Indicador parabólico padrão. Que lugar no código é responsável por mudar a direção do parabólico. Obrigado!
Arquivos anexados:
parabolic.mq4  6 kb