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

 
Vinin >> :

É melhor calcular primeiro os valores estocásticos e de linha de sinal. E depois compará-los. Eu simplesmente não gosto deste estilo. O resultado é algum tipo de cegueira. E é mais fácil cometer um erro.

Se() na variante de metaquotas fizer o cálculo completo da expressão lógica. Seria desejável torná-lo o mais simples possível. É apenas se() for uma das operações mais lentas.

Existe também uma noção como "tagarelice" na barra zero. Pode haver casos em que o sinal será repetido em uma barra mais de uma vez. E pode até não conseguir travar. Foi um sinal falso. É por isso que tentamos tirar valores das barras formadas. Mas, neste caso, devemos utilizar os preços de abertura. Embora, pode haver outras variantes.

A "tagarelice" na barra de zero é clara, mas é outra questão.

Obrigado pela "lentidão" da operação - foi esclarecedora.

Portanto, é melhor criar, por exemplo, variáveis

x=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowingF,PriceFieldF,0,shiftF);

y=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF);

e então se(x>y) etc., certo?

Eu simplesmente não gosto deste estilo". É meio cego. E também é mais fácil cometer um erro".

Como você o escreveria? Ensine-me.

 
Olá a todos. Há um pedido. Em algum lugar na rede vi algo semelhante, mas não o encontrei novamente. Preciso de um roteiro que abra negócios com o tamanho do lote calculado sobre o valor do stoploss. Isto é, uso variáveis externas para definir % do depósito ou montante que estou pronto para arriscar e parar o valor da perda em pips. Dependendo do valor do ponto e stop loss, o roteiro calcula o lote e coloca um pedido. Se você tiver tal roteiro, não hesite em publicá-lo. Quero lhe dar uma dica onde você pode baixá-la. Obrigado de antemão.
 
mukata писал(а) >>

A "tagarelice" no bar zero é compreensível, mas isso é outra questão...

Obrigado pela "lentidão" da operação - isso é esclarecedor.

Em outras palavras, é melhor criar, por exemplo, variáveis

x=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowingF,PriceFieldF,0,shiftF);

y=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF);

e então se(x>y) etc., certo?

Eu simplesmente não gosto deste estilo". É meio cego. E é mais fácil cometer um erro".

Como você o escreveria? Ensine-me.

É assim que eu costumo fazer o controle de cruzamento. Há uma interseção, processamento posterior.

string _Symbol=Symbol(); // чтобы лишний раз не вызывать функцию

double Stoch0  = iStochastic(_Symbol, 0, KperiodF, DperiodF, SlowlingF, methodF, PriceFieldF, 0,     0);
double Stoch1  = iStochastic(_Symbol, 0, KperiodF, DperiodF, SlowlingF, methodF, PriceFieldF, 0, shiftF);
double Signal0 = iStochastic(_Symbol, 0, KperiodF, DperiodF, SlowlingF, methodF, PriceFieldF, 1,     0);
double Signal1 = iStochastic(_Symbol, 0, KperiodF, D periodF, SlowlingF, methodF, PriceFieldF, 1, shiftF);


//пересекла ли главная линия стохастика сигнальную линию 
if (( Stoch0  - Signal0 )*( Stoch1  - Signal1) <0) {
   // Есть пересечение, дальше проверяем положение (как пересекла мы не знаем пока еще)

}
 
Vinin >> :

Normalmente faço o controle de cruzamento desta forma. Há uma interseção, processamento posterior.

  // Есть пересечение, дальше проверяем положение (как пересекла мы не знаем пока еще)
Mm-hmm, que eficiente!!!
Especialmente no meu testador...:-)
A maioria dos carrapatos é sem cruzamentos, mas acontece que eu contei cada carrapato: se tal carrapato é menor que outro, ou outro é menor que tal.....................
Muito obrigado, tenho que trabalhar.
 
mukata писал(а) >>

Somente o meu projeto tem uma desvantagem. Se os valores coincidirem em uma das barras calculadas, pode haver um salto de sinal. Embora isto seja improvável, pode acontecer.

 
StatBars >> :

Obrigado

 
rsi >> :

É o que você diz: envie um pedido durante o dia com as condições 1 & 2, e à noite com as condições 1 & 2 & 3. Portanto, você tem a quarta condição dia-noite, mas você a misturou com a terceira. Você pode, por exemplo.

Obrigado

 

Gostaria de perguntar a algumas pessoas conhecedoras, qual é o número máximo possível de ordens de trabalho (e pendentes)?

Ou não existe tal limite?

 
xrym писал(а) >>

Gostaria de perguntar a algumas pessoas conhecedoras, qual é o número máximo possível de ordens de trabalho (e pendentes)?

Ou não existe tal limitação.

Teria que ser verificado com sua corretora. Você pode tentar colocar um ciclo infinito para ver o máximo:

for(int k=1; k>2; k--)
{
   OrderSend(Symbol(),OP_BUY,0.1,Ask,1,0,0,"testing order");
   Alert("Текущее количество ордеров: ",OrdersTotal());
}
O último alerta será o número máximo de pedidos em seu CD.
 

A propósito, OrderTotal() retorna um número de int. E int pode tomar valores:

Внутреннее представление - длинное целое число размером 4 байта. Целые константы могут принимать значения от -2147483648 до 2147483647. Если константа превышает указанный диапазон, то результат не определен.

Isto é, teoricamente, número máximo de odores: 2147483647
Razão: