[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 934
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
Problema. Por favor, informe.
Em OrderSelect(0,SELECT_BY_POS,MODE_HISTORY)
A OrderProfit() devolve o primeiro lucro da lista da história,
como posso fazer com que ele retorne o último lucro da lista histórica?
Eu tentei desta maneira:
A=OrdensHistoriTotal();
OrderSelect(A,SELECT_BY_POS,MODE_HISTORY);
OrderProfit() não devolve absolutamente nada)
)) mas não está funcionando
Profissionais, por favor, aconselhem como consertar o roteiro. Eu uso um script para exportar dados
Eu recebo 5 arquivos com dados na saída. Eu quero obter 1 arquivo, que conterá dados sobre o primeiro instrumento, depois o segundo, etc. Não consigo colocar tudo em um só arquivo... Obrigado.
Profissionais, por favor, aconselhem como consertar o roteiro. Eu uso um script para exportar dados
Eu recebo 5 arquivos com dados na saída. Eu quero obter 1 arquivo, que conterá dados sobre o primeiro instrumento, depois o segundo, etc. Não consigo colocar tudo em um só arquivo... Obrigado.
Use a abertura do arquivo para ler e escrever, vá para o final do arquivo e adicione
FileOpen(fname,FILE_WRITE|FILE_READ);
FileSeek()
ajudar você
Problema. Por favor, informe.
Em OrderSelect(0,SELECT_BY_POS,MODE_HISTORY)
A OrderProfit() devolve o primeiro lucro da lista da história,
como posso fazer com que ele retorne o último lucro da lista histórica?
Eu tentei desta maneira:
A=OrdensHistoriTotal();
OrderSelect(A,SELECT_BY_POS,MODE_HISTORY);
OrderProfit() não devolve absolutamente nada)
)) mas não está funcionando
Portanto, o último mandado ainda não foi encontrado. E qual é a última. Pela hora de abertura ou fechamento. E, é claro, não se esqueça de qual instrumento procurar.
aconselhar o que escrever em um EA para um limite rígido o volume máximo da transação? ele apenas decide que volume abrir mas às vezes abre um grande volume e depois vai quebrar, eu preciso limitar o máximo de 0,5
Se uma pessoa soubesse, ela mesma o teria feito. Mas aqui parece que você tem que fazer mudanças no código de outra pessoa
Obrigado
extern double TP=20; // ТР для открываемого ордера
extern double Lot=0.01; // Жестко заданное колич. лотов
datetime time;
//--------------------------------------------------------------- 2 --
int start()
{
int Total;
double
M_0,
M_1;
bool
Ans =false, // Ответ сервера после закрытия
Cls_B=false, // Критерий для закрытия Buy
Cls_S=false, // Критерий для закрытия Sell
Opn_B=false, // Критерий для открытия Buy
Opn_S=false; // Критерий для открытия Sell
//--------------------------------------------------------------- 3 --
// Учёт ордеров
for(int i=OrdersTotal()-1;i>=0;i--)
if (OrderSelect(i,SELECT_BY_POS)&&OrderSymbol()==Symbol()&&OrderType()>1)Total++;
if(Total!=0 || time==Time[1])return;
// Торговые критерии
M_0=iOsMA(NULL,0,13,34,8,0,0); // 0 бар
M_1=iOsMA(NULL,0,13,34,8,0,1); // 1 бар
if (M_1<0 && M_0>0)
Opn_B=true;
if (M_1>0 && M_0<0)
Opn_S=true;
//--------------------------------------------------------------- 7 --
if (Opn_B)
{OrderSend(Symbol(),OP_BUY,Lot,Ask,0,Bid-SL*Point,Bid+TP*Point);time=Time[1];}
if (Opn_S)
{OrderSend(Symbol(),OP_SELL,Lot,Bid,0,Ask+SL*Point,Ask-TP*Point);time=Time[1];}
}
Não está funcionando, talvez eu precise mudar algo aqui ou colocá-lo após o início.
Eu tentei traduzir seu código em papel para o russo, eu entendo, mas não funciona,
é muito complicado, especialmente quando as condições em cada condição se seguem, e uma condição em oito condições.
É claro que não discuto quem criou este código é um milagre, mas para mim é uma completa perversão (de uma boa maneira)
Não sou preguiçoso para acrescentar comentários a cada operação e condição, exceto para a função padrão.