[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 620

 
sanyooooook:
algo como isto, onde a ordem é arrastada pelo valor calculado do funk
Obrigado, vamos ver...
 

Pessoal, eu não entendo... Os adiamentos costumavam ser apagados quando expiravam, mas agora não estão - podem ficar no testador por um ano... Qual poderia ser a razão?

Estou usando a função SetOrder da Kim que me envia os parâmetros necessários:

SetOrder(string sy, int op, double ll, double pp,
              double sl=0, double tp=0, int mn=0, string co="", datetime ex=0)

Eu o chamo assim:

   double   tp;
   string   sy=Symbol();
   double pa=MarketInfo(sy, MODE_ASK);
   double pb=MarketInfo(sy, MODE_BID);
   double po=MarketInfo(sy, MODE_POINT);
//-------------------------------------------------------------------------------------         

   Magic=511;
   Lots_New=NormalizeLot(Lots/2, False, NULL);
   SetOrder(NULL, OP_SELLSTOP, Lots_New, Bid-DistORD*Point, 0, Bid-(DistORD+tp)*Point,Magic,TimeCurrent()+1*60*60);
// Функция для рассчёта Take Profit по ATR

//+------------------------------------------------------------------+
//|                  Take from ATR                                   |
//+------------------------------------------------------------------+
double TakeProfitATR (int tf)
  {
   double   atr   =iATR(NULL,tf,14,0);
   double   mltp  =45000;
   if (tf==5) mltp=45000;
   double   tp    =MathRound(atr*mltp);
   return  (tp);
  }

É aqui que eu estabeleço o tempo de vida pendente:

TimeCurrent()+1*60*60

1 = uma hora, 2 = duas horas, etc...
O mais interessante é que tudo funcionava antes, mas agora não funciona...

Devemos normalizar esta expressão que calcula o preço de estabelecimento do pedido?

Bid-DistORD*Point

DistORD = 40,0; // Distância para fazer um pedido

Às vezes aparece o erro 4107

 
Se a DistORD estava intacta, você não precisava, mas precisa.
 

A questão da equidade foi levantada aqui recentemente... Fiquei um pouco viciado nisso e foi a isto que minha pesquisa me levou:


Eu usava o swing usual com adições por tendência e bloqueio de posições abertas.
Eu não usei StopLoss, Take foi calculado dinamicamente usando ATR, segui todas as posições. Para a posição principal, usei o trailing no parabólico (para dizer a verdade - não muito bom),
Para sucatas e lotes, usei um sistema de saída em três níveis onde ao chegar a cada nível a posição era fechada em partes.

Sem controle acionário, o sistema sempre falhou no meio do ano até o final do ano. Depois que o controle acionário foi habilitado - aqui está o gráfico à sua frente.

Cada vez que o patrimônio aumentou 5% em relação ao seu valor inicial, todas as posições foram fechadas completamente e a contagem começou de novo.


Acho que há algumas informações para discussão... Seus pensamentos, amigos...

 
Ajuda para os recém-chegados aqui, mova a discussão para outro tópico.
 
artmedia70:

Acho que há aqui algumas informações para discussão... Seus pensamentos, amigos...



em uma demonstração de 24 horas

Não sei por que, mas no testador meus resultados são os mesmos e não a demonstração completamente diferente.

 
Roger:
Ajuda para os recém-chegados aqui, mova a discussão para outro tópico.
Então foi aqui que a questão da equidade foi levantada - por isso estou postando os resultados de minha pesquisa... E depois, bem, não é interessante, então vamos deixar isso...
 
IgorM:


por 24 horas na demonstração

Não sei por que, mas no testador tenho os mesmos resultados, e não a demonstração completamente diferente.

Já de pé em demonstração...
 

Precisa de ajuda!!! Como escolher o último pedido perdido da história???

 
Roger:
Se a DistORD estava intacta, você não precisava, mas precisa.
E se definirmos o tipo DistORD para int em vez de duplo. Seria correto utilizá-la como uma variável int em uma expressão onde se utilizam variáveis duplas?
Razão: