Discussão do artigo "Desenvolvendo um EA multimoeda (Parte 10): Criação de objetos a partir de uma string"

 

Novo artigo Desenvolvendo um EA multimoeda (Parte 10): Criação de objetos a partir de uma string foi publicado:

O plano de desenvolvimento do EA prevê várias etapas com o salvamento de resultados intermediários em um banco de dados. Recuperá-los de lá é possível apenas na forma de strings ou números, não como objetos. Portanto, precisamos de uma maneira de recriar no EA os objetos necessários a partir de strings lidas do banco de dados.

No artigo anterior, esboçamos um plano geral de desenvolvimento do EA, que inclui várias etapas. Cada etapa gera uma certa quantidade de informações que devem ser usadas nas etapas seguintes. Decidimos salvar essas informações em um banco de dados e criamos nele uma tabela onde podemos armazenar os resultados de passagens individuais do testador de estratégias para diferentes EAs. 

Para que seja possível utilizar essas informações nas próximas etapas, precisamos de um método para criar os objetos necessários (estratégias de trading, seus grupos e experts) a partir das informações armazenadas no banco de dados. Não é possível salvar objetos diretamente no banco de dados. A melhor solução que podemos propor é transformar todas as propriedades dos objetos em uma string, salvá-la no banco de dados e, em seguida, ler essa string do banco e criar o objeto necessário a partir dela.

O processo de criação de um objeto a partir de uma string pode ser feito de várias maneiras. Por exemplo, podemos criar um objeto da classe desejada com parâmetros padrão e, em seguida, usar um método ou função especial para analisar a string lida do banco de dados e atribuir os valores correspondentes às propriedades do objeto. Ou podemos criar um construtor adicional para o objeto, que receberia apenas uma string como parâmetro de entrada. Essa string seria dividida em partes dentro do construtor, e os valores correspondentes seriam atribuídos às propriedades do objeto. Para entender qual opção é mais adequada, primeiro vamos examinar como as informações sobre os objetos são armazenadas no banco de dados.

Autor: Yuriy Bykov