[ARQUIVO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Em nenhum lugar sem você - 4. - página 423
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
bem, então a função OrderLots.
Não consigo entender esta função, por favor, ajude-me com um exemplo :)
diz: "A ordem deve ser pré-selecionada usando a função OrderSelect()", como seleciono todas as ordens abertas na mesma direção?
Eu não consigo entender esta função, por favor me ajude com um exemplo:)
diz "A ordem deve ser pré-selecionada com OrderSelect()", como seleciono todas as ordens abertas na mesma direção?
Não há como. Somente em um loop passando um a um com OrderSelect().
Você pode me dizer se há um roteiro de stop loss que precisa ser inserido neste EA?
Como posso reduzir o número de casas decimais sem arredondamento?
(DoubleToStr(NormalizeDouble(0,109,2),2)); = 0,11 e 0,10
Como posso reduzir o número de casas decimais sem arredondamento?
(DoubleToStr(NormalizeDouble(0,109,2),2)); = 0,11 e 0,10
Há um milhão de maneiras, tais como usar funções de corda para encontrar a localização de um ponto e truncar a corda um caractere além dele. Mas se existe uma solução pronta para uso, pronta para uso, por que inventar problemas?
por favor, sugira uma solução já feita:)
por favor me diga se esta é uma solução já feita:)
Se não for arredondado, apenas este:
Reshetov с помощью строковых функций найти местоположение точки и обрезать строку на один символ далее нее
Por favor, ajude-me a entender o que está errado:
//+------------------------------------------------------------------+
//| AAAA.mq4 |
//| |
//| |
//+------------------------------------------------------------------+
#direitos de propriedade intelectual "".
#ligação de propriedade ""
fio externo TimeStart = "00:00"; // hora do início do período de controle
fio externo TimeEnd = "00:00"; //temporizador do final do período de controle.
duplo LOT externo = 0,01; // lote
magia int externa = 777; // magia
marga dupla,lote,SL,TP; // margem entrada,lote, stop loss e tomar variáveis de lucro
int Total,Ordens,tipOrdens,TradeDey; // tipo de variáveis,tipo de ordem,dia de negociação.
//+---------------------------------------------------------------------------------------------------------------------------------------+
//| função do Expert Advisor |
//+---------------------------------------------------------------------------------------------------------------------------------------+
int start() // Função de início de inicialização
{
data/hora Hora_Início = StringToTime(StringConcatenate(Day(),",Month(),",Year()," ",TimeStart, ":00")); // parâmetros de início //
datatimetime_End = StringToTime(StringConcatenate(Day(),",Month(),",Year()," ",TimeEnd, ":00")); // Parâmetros finais//
Total=0; // Se não houver ordens
for(int i=1; i<=OrdensTotal(); i++) // Laço de encomenda
{
se (OrderSelect(i-1,SELECT_BY_POS)==falso) // Se não houver ordens de mercado
{
se //Se:
{
int BarStart = iBarShift(NULL,PERÍODO_M1,Tempo_Início,falso); // procurar a barra no início do período de verificação no m1
int BarEnd = iBarShift(NULL,PERIOD_M1,Time_End,false); // procurar barra no final do período de referência em m1
duplo Preço_máximo=iHigh(NULL,0,iHighest(NULL,PERÍODO_M1,MODE_HIGH,BarStart-BarEnd,BarEnd)); // o maior valor de preço dentro do período
duplo Min_Price=iLow (NULL,0,iLowest (NULL,PERÍODO_M1,MODE_LOW,BarStart-BarEnd,BarEnd)); // o valor de preço mais baixo dentro do período
}
if (TimeCurrent()>Time_End && ObjectFind("bar0"+Time_End)==-1) // Configurações de exibição gráfica
{
ObjectCreate("bar0"+Time_End, OBJ_RECTANGLE, 0, 0,0, 0,0);
ObjectSet("bar0"+Time_End, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet ("bar0"+Time_End, OBJPROP_COLOR, Blue);
ObjectSet ("bar0"+Time_End, OBJPROP_BACK, true);
ObjectSet ("bar0"+Time_End, OBJPROP_TIME1,Time_Start);
ObjectSet ("bar0"+Time_End, OBJPROP_PRICE1,Max_Price);
ObjectSet ("bar0"+Time_End, OBJPROP_TIME2,Time_End);
ObjectSet ("bar0"+Time_End, OBJPROP_PRICE2,Min_Price);
}
se (Bid<Max_Price) OrderSend(Symbol(),OP_BUYSTOP,LOT,Ask,3,Min_Price, //condições para colocar uma ordem de compra pendente
NormalizeDouble(Ask + Max_Price - Min_Price,Digits), "UPDD",Magic,Blue);
se (Licitação>Preço_Máximo)
Comentário ("Pedido pendente não pode ser colocado em licitação");
se (Licitação>Min_Price) OrderSend(Symbol(),OP_SELLSTOP,LOT,Bid,3,Min_Price, //condições para colocar ordem de venda pendente
NormalizeDouble(Ask + Max_Price-Min_Price,Digits), "UPDD",Magic,Blue);
se (Oferta<Preço_Máximo)
Comentário ("Pedido pendente não pode ser colocado na VENDA");
}
retornar;
}
Não pode compilar. caso contrário, deve colocar duas ordens pendentes para cima e para baixo a partir do intervalo.
Por favor, ajude-me a entender o que está errado:
//+------------------------------------------------------------------+
//| AAAA.mq4 |
//| |
//| |
//+------------------------------------------------------------------+
#direitos de propriedade intelectual "".
#ligação de propriedade ""
fio externo TimeStart = "00:00"; // hora do início do período de controle
fio externo TimeEnd = "00:00"; //temporizador do final do período de controle.
duplo LOT externo = 0,01; // lote
magia int externa = 777; // magia
marga dupla,lote,SL,TP; // margem entrada,lote, stop loss e tomar variáveis de lucro
int Total,Ordens,TipOrders,TradeDey; // tipo de variáveis introduzidas,tipo de ordens,dia de negociação.
//+---------------------------------------------------------------------------------------------------------------------------------------+
//| função do Expert Advisor |
//+---------------------------------------------------------------------------------------------------------------------------------------+
int start() // Função de início de inicialização
{
data/hora Hora_Início = StringToTime(StringConcatenate(Day(),",Month(),",Year()," ",TimeStart, ":00")); // parâmetros de início //
datatimetime_End = StringToTime(StringConcatenate(Day(),",Month(),",Year()," ",TimeEnd, ":00")); // Parâmetros finais//
Total=0; // Se não houver ordens
for(int i=1; i<=OrdensTotal(); i++) // Laço de encomenda
{
se (OrderSelect(i-1,SELECT_BY_POS)==falso) // Se não houver ordens de mercado
{
se //Se: - remover
{
int BarStart = iBarShift(NULL,PERÍODO_M1,Tempo_Início,falso); // procurar a barra no início do período de verificação no m1
int BarEnd = iBarShift(NULL,PERIOD_M1,Time_End,false); // procura na barra fim do período de verificação em m1
duplo Preço_máximo=iHigh(NULL,0,iHighest(NULL,PERÍODO_M1,MODE_HIGH,BarStart-BarEnd,BarEnd)); // o maior valor de preço dentro do período
duplo Min_Price=iLow (NULL,0,iLowest (NULL,PERÍODO_M1,MODE_LOW,BarStart-BarEnd,BarEnd)); // o valor de preço mais baixo dentro do período
}
if (TimeCurrent()>Time_End && ObjectFind("bar0"+Time_End)==-1) // Configurações de exibição gráfica
{
ObjectCreate("bar0"+Time_End, OBJ_RECTANGLE, 0, 0,0, 0,0);
ObjectSet ("bar0"+Time_End, OBJPROP_STYLE, STYLE_SOLID);
ObjectSet ("bar0"+Time_End, OBJPROP_COLOR, Blue);
ObjectSet ("bar0"+Time_End, OBJPROP_BACK, true);
ObjectSet ("bar0"+Time_End, OBJPROP_TIME1,Time_Start);
ObjectSet ("bar0"+Time_End, OBJPROP_PRICE1,Max_Price);
ObjectSet ("bar0"+Time_End, OBJPROP_TIME2,Time_End);
ObjectSet ("bar0"+Time_End, OBJPROP_PRICE2,Min_Price);
}
se (Bid<Max_Price) OrderSend(Symbol(),OP_BUYSTOP,LOT,Ask,3,Min_Price, //condições para colocar uma ordem de compra pendente - ordens pendentes não podem ser colocadas por Ask ou Bid
NormalizeDouble(Ask + Max_Price - Min_Price,Digits), "UPDD",Magic,Blue);
se (Licitação>Preço_Máximo)
Comentário ("Pedido pendente não pode ser colocado em licitação");
se (Licitação>Preço_Mín_Preço) EncomendarEnviar(Símbolo(),OP_SELLSTOP,LOT,Bid,3,Preço_Mín_Preço, //condições para colocar ordem de venda pendente - mesmo
NormalizeDouble(Ask + Max_Price-Min_Price,Digits), "UPDD",Magic,Blue);
se (Bid<Max_Price) - deve haver um erro aqui
Comentário ("Pedido pendente não pode ser colocado na VENDA");
}
} - adicionar
retornar;
}
Não posso compilá-lo. Na verdade, ele deve colocar duas ordens pendentes para cima e para baixo a partir do intervalo.