Boa tarde! Não consigo perceber como fazer uma coisa simples na MQL5. Preciso de declarar uma variável de nível de classe (tipo array tridimensional duplo) e depois fazer a sua inicialização tardia em construtor. Em C# pareceria assim:
public class MyClass {
private double[,,] myArray;
public MyClass(int dimension1, int dimension2, int dimension3)
{
myArray = new double[dimension1, dimension2, dimension3];
}
}
Como obter o mesmo resultado na MQL5? Posso declarar uma matriz dinâmica tridimensional. Mas com a função ArrayResize posso atribuir memória apenas para a primeira dimensão, e as outras duas?
Bom dia! Não compreendo bem como utilizar a função
for (int i=0;i<10;i=i+0.1){ Print( "i ",i);
boolOrderCalcMargin(
action=ORDER_TYPE_SELL, // тип ордера
symbol=_Symbol, // имя символа
volume=i, // объем
price=last_tick.bid, // цена открытияdouble& margin // переменная для получения значения маржи
);
Print( " margin ", margin ); }
OrderCalcMargin' - função só pode ser declarada no depósito de âmbito global.mq5 86 Algo está errado, em suma.
Em geral, quero criar uma função que utilize uma percentagem do depósito. Por exemplo, 50% é um acordo sobre metade do meu depósito. Quero compreender quanto é 1 lote? Pode ser calculado de forma programática? Estive a pensar e a ler durante o terceiro dia. E os lotes podem ser diferentes em todo o lado - depende do tipo de transacção e da conta!
Dimka-novitsek: Quero compreender, quanto é 1 lote? É possível calculá-lo de forma programática? Há três dias que estou a pensar e a ler. E os lotes podem ser diferentes em todo o lado - depende do tipo de transacção e da conta!
Se a sua resposta à segunda pergunta, tente encontrar o artigo"The ABCs of Currency Trading" pelo seu título. Parece ter sido escrito para o MT4, mas não é muito especial.
Ainda se afasta... Digamos acção=ORDER_TYPE_SELL, diz 'action' - identificador não declarado. OuENUM_ORDER_TYPE action=ORDER_TYPE_SELL, diz "acção" - símbolo inesperado.
Está em todo o lado... E em inglês...
for (int i=0;i<10;i=i+0.1){ Print( "i ",i);
OrderCalcMargin(
ENUM_ORDER_TYPE action=ORDER_TYPE_SELL, // тип ордера
symbol=_Symbol, // имя символа
volume=i, // объем
price=last_tick.bid, // цена открытия
margin // переменная для получения значения маржи
);
Print( " margin ", margin ); }
Para login e uso do site MQL5.com, você deve ativar o uso de cookies.
Ative esta opção no seu navegador, caso contrário você não poderá fazer login.
Você entrou na conta. A autenticação de dois fatores foi desativada. Configure-a novamente e escaneie um novo código QR ou continue com a autenticação de dois fatores desativada.
Boa tarde! Não consigo perceber como fazer uma coisa simples na MQL5. Preciso de declarar uma variável de nível de classe (tipo array tridimensional duplo) e depois fazer a sua inicialização tardia em construtor. Em C# pareceria assim:
public class MyClass
{
private double[,,] myArray;
public MyClass(int dimension1, int dimension2, int dimension3)
}
Como obter o mesmo resultado na MQL5? Posso declarar uma matriz dinâmica tridimensional. Mas com a função ArrayResize posso atribuir memória apenas para a primeira dimensão, e as outras duas?
ERR_TRADE_SEND_FAILED
4756
Falha no envio do pedido comercial
Porque é que não funcionou? Talvez os profissionais me possam dizer rapidamente onde procurar, senão adivinho até hoje à noite.
Bom dia! Caros utilizadores do fórum, alguém lhe pode dar algumas dicas aqui?
ERR_TRADE_SEND_FAILED
4756
Falha no envio de um pedido comercial
Porque é que não funcionou? Talvez os profissionais lhe digam rapidamente onde procurar, caso contrário adivinharei até ao anoitecer.
Não precisa de adivinhar, precisa de ver a informação no pedido MqlTradeRequest, criou-a por uma razão.
Bem, para começar, não especificou o preço a que planeia vender
OrderCalcMargin' - função só pode ser declarada no depósito de âmbito global.mq5 86 Algo está errado, em suma.
Em geral, quero criar uma função que utilize uma percentagem do depósito. Por exemplo, 50% é um acordo sobre metade do meu depósito. Quero compreender quanto é 1 lote? Pode ser calculado de forma programática? Estive a pensar e a ler durante o terceiro dia. E os lotes podem ser diferentes em todo o lado - depende do tipo de transacção e da conta!
Bom dia! Não compreendo bem como utilizar a função
OrderCalcMargin' - a função só pode ser declarada no âmbito global do depósito.mq5 86 Algo está errado.
Dmitry!
Leia atentamente o que é uma função e o que é uma chamada de função
Tem uma confusão completa de declarações e utilizações
Obrigado!
Sim, a função de duplo vermelho é culpa minha...
Ainda se afasta... Digamos acção=ORDER_TYPE_SELL, diz 'action' - identificador não declarado. OuENUM_ORDER_TYPE action=ORDER_TYPE_SELL, diz "acção" - símbolo inesperado.
Está em todo o lado... E em inglês...