- O código está correto?
- Como melhorar o código ?
- Como acelerar o código?
O que você quer dizer com certo ou errado? Se funcionar corretamente, está certo. Se não funciona, é errado.
Melhorar. Melhorar quando algo não satisfaz uma necessidade. O que não atende às suas necessidades, então você deve melhorá-lo nesta direção.
Por que acelerar? As ordens não abrem com tanta freqüência, mesmo raramente comparado ao número total de carrapatos no testador.
Mas isso era filosofia.
Prática. Por que precisamos desta classe se existe uma grande classe padrão? É verdade, é para o MT5 e não sei se ele está disponível para o MT4. Você não tem um?
Há uma desvantagem em seu código - ausência de Stop Loss e Take Profit.
Então o OOP é apenas uma função para se encaixar em uma classe? Produtivo, vai ser divertido no fórum em breve.
Se você é tão inteligente, então escreva da maneira correta, o tópico não foi criado para sarcasmo ....
Se você é tão inteligente, então escreva da maneira correta, o tópico não é para sarcasmo ....
Depende do que você quer, do que precisa e de qual é seu estilo de programação.
Você pode fazer uma classe como um conjunto de funções com parâmetros, como no seu caso.
Você pode fazer métodos para definir parâmetros, e abrir diretamente a ordem, chamando o método sem parâmetros.
Seria melhor quando fosse mais simples - neste caso, será mais aplicável em casos diferentes. Tentar fazer algo super-perfeitamente universal é o sonho de um idiota, uma perda de tempo e de esforço mental.
Mais. Até que você tenha tido que resolver o mesmo problema 20 vezes, é melhor não tentar criar uma abordagem universal.
O que isso significa certo ou errado? Se funcionar corretamente, está certo. Se não funciona, é errado.
Melhorar. Você deve melhorar quando algo não atende a uma necessidade. As necessidades não são atendidas, nessa direção, para melhorar.
Por que acelerar? As ordens não abrem com tanta freqüência, mesmo raramente comparado ao número total de carrapatos no testador.
Mas isso era filosofia.
Prática. Por que precisamos desta classe se existe uma grande classe padrão? É verdade, é para o MT5 e não sei se ele está disponível para o MT4. Você não tem um?
Há uma desvantagem em seu código - ausência de Stop Loss e Take Profit.
Parar as perdas e as tomadas para pedidos são definidas separadamente, pois podemos não saber em que tipo de conta estaremos trabalhando ....
Você pode fazer métodos para definir parâmetros, e abrir diretamente uma ordem chamando um método sem parâmetros.
Você pode demonstrar isso com meu exemplo?
Não me apetece codificar. De qualquer forma... Na seção privada declarar variáveis para Stop Loss, Take Profit e valores de lote. Estas variáveis são usadas nos métodos de abertura de ordem, é claro, o lote é como é e os níveis de preços são calculados usando estas variáveis. Mas devemos definir valores para estas variáveis. Isto significa que precisamos de métodos como: SetTakeProfit(int Value), SetStopLoss(int Value), SetLots(double Value).
Na maioria dos EAs, os métodos SetTakeProfit(int Value), SetStopLoss(int Value), SetLots(double Value) só precisarão ser chamados uma vez no inite. A chamada de métodos para abrir ordens sem parâmetros acelera muito o tempo de execução.
Se você é tão inteligente, escreva corretamente, o tópico não foi criado para sarcasmo ....
Como sempre, eu queria aprender, mas é certo que há quem não tem mais nada a dizer a não ser ser ser esperto...
Escrevi um exemplo simples para desmontá-lo, não sei como escrever de forma mais competente com o OOP ... É apenas um exemplo, se você souber escrever um código similar corretamente e OOP então, por favor, escreva, para que eu e outros possam aprender ...
Como sempre, eu queria aprender, mas é certo que há quem não tem mais nada a dizer a não ser para ser esperto...
Escrevi um exemplo simples para desmontá-lo, não sei como escrever de forma mais competente com o OOP ... É apenas um exemplo, se você souber escrever tal código corretamente e OOP então, por favor, escreva, para que eu e outros possam aprender ...
Não importa.
* * *
Você deve se esforçar para garantir que os métodos principais e mais freqüentemente utilizados sejam chamados sem passar por nenhum parâmetro. Isto aumentaria o desempenho. Mas isso reduzirá a usabilidade.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Olá a todos!
Acho que é hora de criar esta linha, porque não há um bom treinamento OOP em nenhum lugar, mas nós precisamos e queremos aprender.
Para eliminar o ramo "perguntas de novatos" com exemplos de códigos mais complicados e não compreensíveis para os novatos, provavelmente não é necessário.
Tendo lido os dois artigos "The Basics of Object Oriented Programming andOOP in MQL5 by Example: Error and Warning Code Handling", escrevi um exemplo de código que gostaria de explicar em detalhes.
Escrevi um código de amostra e quero estudá-lo em detalhes. Também sugiro que você publique seus próprios códigos e os discuta juntos.
Estou interessado no seguinte: