Não, sobre as bicicletas não se encaixa. Preciso fazer uma correção de tempo - a diferença entre os fusos horários de dois terminais diferentes. É uma questão de horas. Eu mesmo procurarei a falha.
Aleksander: no início - ligue para a função para verificar se há uma ordem de compra no loop de pedidos SellStop... e removê-lo - se não houver ordem de compra entre as ordens abertas.
Eu não entendo a frase " Aordem de compra está presente no loop de pedidos SellStop " .
O tempo de abertura do pedido é o sexto parâmetro da linha. Foi lido na variável tipo data/hora pelos comandos:
Stroka=FileReadString(FileHandle);// Tempo de abertura r_master_OpenTime[i]=StrToTime(Stroka);// Horário de abertura
Como resultado, temos um Deus sabe que valor na variável r_master_OpenTime[i]. Mas assim que eu mudei seu tipo de data para int, tudo está bem. Estou programando com mql4 há mais de cinco anos e ainda não consigo parar de me perguntar... :)
- Se for um SellStop (lembre-se de seu número mágico - é também um bilhete de ordem de compra {
via
O bool OrderSelect(
int index, int select, int pool=MODE_TRADES)
verificamos se a ordem existe... - esta é a sua ordem de compra...
se não estiver lá - então apague o pedido SellStop atual
}
Fim do laço do pedido...
Eu escrevi este absurdo
int i, k=OrdersTotal();
for (i=0; i<k; i++)
if(OrderType()==OP_SELLSTOP)
if(OrderMagicNumber()==ticket)
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
if(OrderType()==OP_BUY)return(-1);
else
OrderDelete(OrderTicket());
O tempo de abertura da ordem é o sexto parâmetro na cadeia. Foi lido na variável do tipo data/hora por comandos:
Stroka=FileReadString(FileHandlе);// Время открытия
r_master_OpenTime[i]=StrToTime(Stroka);// Время открытия
Como resultado, a variável r_master_OpenTime[i] conteria um valor sem importância. Mas assim que eu mudei seu tipo de data para int, tudo está bem. Estou programando com mql4 há mais de cinco anos, e ainda não consigo parar de me perguntar... :)
Converter uma string contendo a hora e/ou data no formato "yyyy.mm.dd [hh:mi]" para um número de data/hora (número de segundos decorridos desde 01.01.1970)
O formato dos dados de entrada não corresponde ao formato esperado
Tentei escrever um indicador, parece funcionar, mas apenas na história que desenha como planejado e depois, quando novas citações chegam, desenha uma máscara habitual.
O código está anexado:
int start() { int counted_bars=IndicatorCounted(); int i,n; double Stark=0; //---- i=Bars-counted_bars-1;//+50; // n=Bars-counted_bars-1; while(i>=0) { //----
no início - ligue para a função para verificar se há uma ordem de compra no loop de pedidos SellStop... e removê-lo - se não houver ordem de compra entre as ordens abertas.
ver...
Ronda de ordens definidas (início)
tomamos o pedido
- Se for um SellStop (lembre-se de seu número mágico - é também um bilhete de ordem de compra {
via
verificamos se a ordem existe... - esta é a sua ordem de compra...
Se não estiver lá, apagamos o pedido SellStop atual
}
} Fim do laço do pedido...
InitsializeRealMasterOrders -- procure por uma falha aqui.
E aqui está outra coisa - não para fazer uma bicicleta - https://docs.mql4.com/ru/convert/timetostr
Ainda é uma falha. Na sub-rotina, o código lê os dados das linhas do documento de texto:
4;NZDUSD;98537467;1;0.5;1340809155;0;0.7881;0;0.7939;0;0
4;NZDUSD;98537450;1;0.5;1340809147;0;0.788;0;0.7939;0.787;0
O tempo de abertura do pedido é o sexto parâmetro da linha. Foi lido na variável tipo data/hora pelos comandos:
Stroka=FileReadString(FileHandle);// Tempo de abertura
r_master_OpenTime[i]=StrToTime(Stroka);// Horário de abertura
Como resultado, temos um Deus sabe que valor na variável r_master_OpenTime[i]. Mas assim que eu mudei seu tipo de data para int, tudo está bem. Estou programando com mql4 há mais de cinco anos e ainda não consigo parar de me perguntar... :)
ver...
Ronda de ordens definidas (início)
tomamos o pedido
- Se for um SellStop (lembre-se de seu número mágico - é também um bilhete de ordem de compra {
via
verificamos se a ordem existe... - esta é a sua ordem de compra...
se não estiver lá - então apague o pedido SellStop atual
}
Fim do laço do pedido...
Eu escrevi este absurdo
drknn: Все равно глюк. В подпрограмме код считывает данные из строк текстового документа:
4;NZDUSD;98537467;1;0.5;1340809155;0;0.7881;0;0.7939;0;0
4;NZDUSD;98537450;1;0.5;1340809147;0;0.788;0;0.7939;0.787;0
O tempo de abertura da ordem é o sexto parâmetro na cadeia. Foi lido na variável do tipo data/hora por comandos:
Como resultado, a variável r_master_OpenTime[i] conteria um valor sem importância. Mas assim que eu mudei seu tipo de data para int, tudo está bem. Estou programando com mql4 há mais de cinco anos, e ainda não consigo parar de me perguntar... :)
Por favor, informe o que fazer se:
No testador está funcionando bem, tudo de acordo com o planejado, mas no realsk não abre a transação.
P.S. Realmente precisa de ajuda, questão de vida ou de morte
Bom dia a todos.
Tentei escrever um indicador, parece funcionar, mas apenas na história que desenha como planejado e depois, quando novas citações chegam, desenha uma máscara habitual.
O código está anexado:
int start()
{
int counted_bars=IndicatorCounted();
int i,n;
double Stark=0;
//----
i=Bars-counted_bars-1;//+50;
// n=Bars-counted_bars-1;
while(i>=0)
{
//----
double Ma=iMA(NULL,0,PerMa,Shift,MODE_EMA,PRICE_CLOSE,i);
//double Ma1=iMA(NULL,0,PerMa,Shift,MODE_EMA,PRICE_CLOSE,i+1);
if(Stark+Step*Point<Ma)Stark=Ma;
if(Stark-Step*Point>Ma)Stark=Ma;
ABuf[i]=Stark;
//----
i--;
}
return(0);
}
Por favor, ajude-me a consertá-la para que ela continue desenhando passos.
Eu realmente apreciaria isso.
Gek.
{
Price1 =(iClose(Symbol_1,0,0) - iClose(Symbol_1,0,f)) / MarketInfo(Symbol_1, MODE_POINT)
Price2 = K*(iClose(Symbol_2,0,0) - iClose(Symbol_2,0,f)) / MarketInfo(Symbol_2, MODE_POINT);
Spread = Price1 - Price2;
Print ("Price1="+Price1, " Price2="+Price2);
if (Spread==0){t=f; break;}
}
Price12 = (iClose(Symbol_1,0,0) - iClose(Symbol_1,0,t)) / MarketInfo(Symbol_1, MODE_POINT);
Price22 = K*(iClose(Symbol_2,0,0) - iClose(Symbol_2,0,t)) / MarketInfo(Symbol_2, MODE_POINT);
Spread2 = Price12 - Price22;
if (MathAbs(Spread2) >= razdvizka && Spread2 < 0) { open trade }
Quero fixar a barra onde o spread era igual a zero e controlar o spread a partir dela
Por favor, informe o que fazer se:
No testador está funcionando bem, tudo de acordo com o planejado, mas no realsk não abre a transação.
P.S. Realmente precisa de alguma ajuda, é uma questão de vida ou morte