Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1439

 
ANDREY:

Obrigado pelo valioso conselho. Agora eu só leio a documentação enquanto escrevo o código, quando me deparo com uma pergunta para a qual não sei a resposta. Eu nunca encontrei a necessidade de escrever dados em arquivos enquanto escrevia código no passado, por isso é um tópico totalmente novo para mim.
Diga-me, minha idéia não pode ser realizada de uma maneira mais simples, sem escrevê-la em um arquivo? Como no meu código. Isto não é um código de trabalho, mas para ilustrar minha idéia de como encontrar o mínimo entre duas ordens adjacentes abertas em um castiçal de um minuto
Obrigado pela ajuda.

Ou seja, escrevi o preço de cada carrapato diretamente na matriz, não em um arquivo.

Bem, eu não sei como você pode ler assim. Quando comecei a programar, quando entrei na documentação para qualquer coisa trivial, a programação simplesmente parou. Cada vez mais eu me desvendei... Você leu sobre uma função escrevendo em um arquivo e não viu nada ao seu lado. Você já foi informado sobre outro e está eufórico com o que ouviu. O que mais existe? Você já leu alguma coisa? Que outras funções existem para escrever em um arquivo? E como você tem que ler para fazer tais perguntas? Eu lhe disse para escrever um array e ler um array. E você quer escrever .csv e ler para um array. Não é assim que funciona. E se você só precisa de tudo isso... no momento, por que escrever para um arquivo?
 
Valeriy Yastremskiy:

Você recebe seu preço, pode fixar o tempo mas espera por um novo pedido. e depois pede o tempo máximo ou mínimo de carrapato. um carrapato é um carrapato afinal de contas.

O preço de um carrapato é sempre um carrapato. Esta não é a variável x baixa, mas a expressão X =LoY[1]. LoY[1] é price....., sem opções.
"..... e depois você pergunta o tempo máximo ou mínimo de tick...."

É o que acontece com esta idéia, o tempo não está envolvido de forma alguma ..... apenas o preço mínimo da vela, o que só descubro duas vezes. A primeira vez quando a primeira ordem é aberta e a segunda vez quando a segunda ordem é aberta. Depois comparo esses preços e chego a uma conclusão: se o primeiro pedido foi aberto antes de LoY[] ser formado ou depois de formado. No início, pensei que precisava de informações sobre o tempo para resolver meu problema. Mas então surgiu em mim.... e pareceu que podemos passar sem tempo e apenas o preço mínimo de uma vela é suficiente.

 
Alexey Viktorov:
Bem, eu não sei como você pode ler assim. Quando eu comecei a programar, entrar na documentação para qualquer coisa trivial simplesmente interromperia a programação. Cada vez mais eu me desvendei... Você leu sobre uma função escrevendo em um arquivo e não viu nada ao seu lado . Você já foi informado sobre outro e está eufórico com o que ouviu. O que mais existe? Você já leu alguma coisa? Que outras funções existem para escrever em um arquivo? E como você tem que ler para fazer tais perguntas? Eu lhe disse para escrever um array e ler um array. E você quer escrever .csv e ler para um array. Não é assim que funciona. E se você só precisa de tudo isso... no momento, por que escrevê-lo em um arquivo?

Penso que é útil olhar o que está ao lado um do outro quando o material está logicamente conectado em significado e apresentado em uma seqüência compreensível. Como é normalmente o caso nos livros didáticos. Eu não sinto esta conexão e consistência no Manual. Admito que posso tê-los, mas a questão são minhas peculiaridades cognitivas.

Eu ainda não entendo o principal. Por que eu deveria escrever dados de meu código no arquivo se não preciso. Em que circunstâncias faz sentido escrever os dados de um programa em um arquivo .... em geral e no meu caso. Como me parece a partir de suas palavras, a razoabilidade de escrever dados em um arquivo é de alguma forma condicionada pela freqüência com que eu usarei meu código. Mas eu ainda não entendo o sentido desta condicionalidade. Talvez a questão seja que os mesmos dados do arquivo também podem ser usados do meu outro programa? Mas então outro programa precisaria exatamente desses dados escritos no arquivo. E isto está longe de ser uma certeza...
Obrigado pela ajuda.

 
Colegas, olá! Estou procurando um indicador de equidade para mostrar a porcentagem do saque atual sobre o patrimônio líquido, bem como as curvas em tempo real do saldo e da equidade. Eu não faço monitoramento na mosca por causa disso.
 
Alexey Viktorov:
Eu lhe disse para escrever um array e ler um array. E você quer escrever .csv e ler a matriz. Não funciona dessa forma. E se você só precisa de tudo isso... no momento, por que escrever para um arquivo?

Eu também fiquei intrigado com a frase vermelha. Porque eu não queria escrever um .csv e ler em um array. Porque ainda não sei como fazer isso. Eu sei que existem arquivos de texto com extensão .csv. Mas será que eu toquei em algum arquivo com esta extensão em meu código? A partir da matriz .... read.... Sinto muito :=)... mastambém não seileremarray e ainda não entendo o que significa.
Eu apreciaria se você pudesse reescrever meu código (é bastante curto) para que ele tivesse a função
de escrever em arquivo e função de ler a partir de arquivo.
Como este código é meu, rapidamente vou aprender novas informações para mim.
Obrigado mais uma vez, e desculpe-me por não ser tão avançado quanto você e fazer perguntas provavelmente estúpidas (na sua opinião profissional).

Quero aprender mql4 e depois mql5 de uma maneira estável. Isto não é uma moda momentânea. Além disso, agora eu tenho mais tempo para isso.
Outra coisa é que estou obtendo novas informações não tão rapidamente quanto gostaria...., mas estou. Graças a você e aos outros participantes deste fórum. Pelo que sou grato a todos.

 
ANDREY:

Eu também fiquei intrigado com a frase vermelha. Porque eu não queria escrever um .csv e ler em um array. Porque ainda não sei como fazer isso. Eu sei que existem arquivos de texto com extensão .csv. Mas será que eu toquei em algum arquivo com esta extensão em meu código? A partir da matriz .... read.... Sinto muito :=)... mastambém não seileremarray e ainda não entendo o que significa.
Eu apreciaria se você pudesse reescrever meu código (é bastante curto) para que ele tivesse a função
de escrever em arquivo e função de ler a partir de arquivo.
Como este código é meu, rapidamente vou aprender novas informações para mim.
Obrigado mais uma vez e desculpe-me por não ser tão avançado como você e fazer perguntas provavelmente bobas à sua opinião profissional.

Andriy, eu não me meto nos códigos das outras pessoas. Prefiro explicar, se não consigo entender o que está escrito na documentação. Se você não leu a documentação ou não aprofundou, você obviamente não entendeu nada. E a maneira que você sugere não será ensinar, mas um "aquário" para o qual você quer fazer algo semelhante no futuro. Mas esta abordagem nem sempre funciona.

 
ANDREY:

Obrigado pelo conselho. Mas...... Aqui está uma captura de tela da Documentação sobre operações de arquivo

Parece-me que o guia foi projetado para usuários já avançados. Kovalev em seu tutorial explicou em detalhes o que é necessário e para que propósito antes de entrar em detalhes.

Mas seu tutorial, como eles dizem aqui, está desesperadamente ultrapassado, e até mesmo perigoso para iniciantes.

Não, não é. Você só precisa lê-lo entendendo que houve melhorias e mudanças na linguagem. É melhor inserir o código primeiro, criando um modelo no meta-editor. Haverá menos erros. Na lógica dos algoritmos, o livro didático é relevante. E escrever para o arquivo lá é correto. Dê uma olhada no livro de Dmitry Fedoseyev sobre µl5. Acho que ele colocou seu no Googleplay.

 
Valeriy Yastremskiy:

Não, não está desatualizado. Você só precisa ler o entendimento de que houve melhorias na linguagem e há mudanças. É melhor inserir o código, criando primeiro um modelo de programa no meta-editor. Haverá menos erros. Na lógica dos algoritmos, o livro didático é relevante. E escrever para o arquivo lá é correto. Dê uma olhada no livro de Dmitry Fedoseyev sobre µl5. Acho que ele colocou seu no Googleplay.

Obrigado pela dica. Já comecei a ler FILE OPERATIONS do tutorial de Kovalev. De fato... algo está começando a ficar claro. Entendi que todos os EAs que eu estava testando li arquivos de texto com preços de barras (embora não criados por meu programa) com extensão .cvv localizada na pasta do terminal do Testador.
Em outras palavras, as informações (dados) de qualquer programa são escritas no arquivo e lêem esses dados do arquivo, também por qualquer programa. Parece-me que os arquivos armazenam uma grande quantidade de dados que não é razoável armazenar no programa. Algo como um arquivo mqh.
Se você quiser me explicar o que significa a frase de Alexey Victorov : "....Você quer escrever .csv e ler array
" do post #14384 com referênc Eu pensei que ele se referia ao arquivo de texto .cvv, com preços de barras do diretório de testes. Mas o que ele quer dizer exatamente, eu ainda não entendo. Não estou escrevendo estes arquivos .cvv, mas o programa do revendedor Alpari... Como o programa lê de uma matriz - em geral entendo um pouco ... Ele acessa uma célula de um array por seu endereço, entra na célula e acessa o valor da célula (ou seja, lê-a). Como um programa pode ser lido em um array em vez de fora dele? Esta é uma contradição insolúvel .... parece-me, na minha opinião de leigo. Eu acho, por alguma razão, que em um array você só pode escrever alguns valores. E você só pode ler a partir de uma matriz

 
ANDREY:

...
Se você não se importa de me explicar qual é a frase de Alexey Victorov ".....E você quer escrever .csv e ler em array
" do post #14384 em relaç meu código do post #14382 Como me pareceu, ele quer dizer arquivo texto .cvv, com preços de barras do catálogo do Testador. Mas o que ele quer dizer exatamente, eu ainda não entendo. Não estou escrevendo estes arquivos .cvv, mas o programa do revendedor Alpari... Como o programa lê de uma matriz - em geral entendo um pouco ... Ele acessa uma célula de um array por seu endereço, entra na célula e acessa o valor da célula (ou seja, lê-a). Como um programa pode ser lido em um array em vez de fora dele? Esta é uma contradição insolúvel .... parece-me, na minha opinião de leigo. Eu acho, por alguma razão, que em um array você só pode escrever alguns valores. E você só pode ler a partir da matriz.

Sim, e eu não me importo. Não está cavando no código.

FileWrite

Escreve dados em um arquivo CSV ou TXT

FileWriteArray

Escreve matrizes de qualquer tipo, exceto matrizes de cordas, em um arquivo do tipo BIN .


Leia em um array, ou seja, a partir de um arquivo. Veja a função

uint  FileReadArray( 
   int    file_handle,               // handle файла 
   void&  array[],                   // массив для записи 
   int    start=0,                   // стартовая позиция для записи в массив 
   int    count=WHOLE_ARRAY          // сколько читать 
   );

Passa uma matriz preparada e escreve para ela.

Você só pode usar a função de leitura de array a partir de um arquivo escrito com a função de gravação de array.

Em princípio, você pode ler qualquer arquivo que não contenha cordas em uma matriz. Mas será apenas o preenchimento de elemento por elemento da matriz.

ps;

Graças ao acaso, pelo menos eu mesmo li a documentação e encontrei novas funções de escrita e leitura de matriz em mql5.

Документация по MQL5: Файловые операции / FileSave
Документация по MQL5: Файловые операции / FileSave
  • www.mql5.com
FileSave - Файловые операции - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Alexey Viktorov:

Também não é difícil para mim. Não se trata de escavar em código.

FileWrite

Escreve dados em um arquivo CSV ou TXT

FileWriteArray

Escreve qualquer tipo de arrays, exceto arrays de cordas, em um arquivo do tipo BIN .



Graças ao acaso, pelo menos eu li a documentação e encontrei novas funções em mql5 para escrita e leitura de array.

Ainda bem que pude lhe ajudar :=) :=) :=)

Agora sobre o meu código, que provavelmente é tão ruim que é desagradável de espreitar por aí. Mas diga-me ao menos qual seria a vantagem do meu código, se eu escrevesse um único array (com valores de preço) deste código em um arquivo, e então o programa o leria deste arquivo e usaria seus valores em cálculos posteriores... E o array de apenas 60 elementos. O que exatamente em meu código seria ótimo?
Obrigado por sua ajuda.
Razão: