Selecione um símbolo nas configurações - página 4

 
Alexey Viktorov:

... "Quem precisa disso???"

...Há aqui pessoas suficientes que também podem desenhar desenhos animados na carta terminal.

Exatamente! Há as coisas óbvias do comércio e depois há os excessos.

As pessoas aqui reclamam que o terminal não conhece os erros devolvidos pela Bolsa de Moscou! (E reclamam há anos...).

Também há uma clara necessidade comercial de ter uma lista de pares ativos (pelo menos a partir da janela de visão geral do mercado), mas isto não está lá.

Não há como obter explicitamente um tique de um par da janela de visão geral do mercado - você tem que enviar alguns espiões para algum lugar... (eu sei quais e como, é fácil, mas é um absurdo)

Ou não há nenhuma possibilidade trivial de classificar os resultados da otimização... Todos os que otimizam algo têm uma necessidade tão grande o tempo todo... (sim, o excel é bom, mas não é um terminal e é inconveniente transferir as configurações de volta. Até mesmo a possibilidade de copiar um determinado parâmetro dos resultados da otimização foi removida).

De que se trata tudo isso?

Para que preciso de desenhos animados no Terminal... (ou pelo menos a possibilidade potencial de múltiplos), quando não há coisas comerciais óbvias!

Metaquotas sem ofensa, mas há algo de errado com a colocação. é um fato da questão. Isto é o que estou escrevendo com base em minha experiência de uso do mql5. Se o mql4 me fez sentir que funções comerciais foram adicionadas ao C, no mql 5 tanto a linguagem quanto as funções comerciais se afogaram no labirinto da lógica intra-terminal. Em breve será como programar com a api em janelas.

Mas, imho, você tem que se aproximar da vida. E a vida é a necessidade do comércio. Por exemplo, é uma grande oportunidade de abrir um negócio no terminal com um clique! Isso é ótimo.

Ou seja, você olha através da tela, obtém as informações necessárias. Clique com o mouse - abra uma posição. Nada desnecessário!

Por que eu preciso saber como uma ordem é gradualmente transformada em uma posição? Esta não é uma questão de comerciante, esta é uma questão interna! Não se dá um comando aos vasos para micro-comprimir após cada batida do coração. E você não dá um comando aos intestinos como trabalhar. Em mql, todas essas questões intra-terminais são despejadas sobre os programadores. E muito esforço é dedicado a isso. E não há coisas óbvias.

E você quer outro fato divertido? Se você fizer todo o processamento corretamente, alguns dos quais já foram descritos em artigos, você não encontrará o algoritmo de negociação em tal robô comercial... Isto é sério! Isto é algum tipo de desequilíbrio. Até agora, o mql5 é um brinquedo criado por programadores para programadores. Com capacidades de programação impressionantes para a programação.

Bem, está bem, acho que muitas pessoas já contaram as metaquotas sobre isso, então provavelmente não há sentido em escrever. Mas as impressões se amontoaram... Eu tinha que dar-lhes voz)). É bom para o sistema nervoso)).

Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Тестирование стратегий - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Тестер стратегий позволяет тестировать и оптимизировать торговые стратегии (советники) перед началом использования их в реальной торговле. При тестировании советника происходит его однократная прогонка с начальными параметрами на исторических данных. При оптимизации торговая стратегия прогоняется несколько раз с различным набором параметров...
 

OK, esse tópico estava meio incompleto.

Então, tive que fazer o testador pegar um par, além de outros valores.

E para não escrever uma construção selvagem a partir da escrita manual de cada par e mar de variáveis, eu estava procurando uma maneira de fazer isso ou por meios padrão ou de alguma forma mais curtos.

E aqui está a variante final - pode vir a ser útil para alguém... O que eu escrevi e funciona.

1- Na janela de visão geral do mercado, ligue todos os símbolos e clique com o botão direito do mouse - salvar. Recebemos um arquivo de texto com uma lista. No meu caso, só lá estava forex, então se você tiver algo mais lá dentro, acrescente o processamento disso você mesmo...

2- Pares do arquivo, insira-os no enumero. Na declaração das variáveis do Expert Advisor, escreva:

enum Enum_Symbol {AUDJPY,AUDUSD,CHFJPY,EURAUD,EURCAD,EURCHF,EURGBP,EURJPY,EURRUR,EURUSD,GBPAUD,GBPCAD,GBPCHF,GBPJPY,GBPUSD,USDCAD,USDCHF,USDJPY,USDRUR};
input Enum_Symbol       SIMBOL_1          = AUDUSD;   // Выбор пары для ...
input Enum_Symbol       SIMBOL_2          = AUDJPY;   // Выбор пары для ...

...

É isso, o testador poderá pesquisar os caracteres da lista.

Também é conveniente selecionar o par a partir da lista suspensa nas configurações. Observe que, para otimizar, você precisa instalar toda a lista imediatamente no programa antes da primeira compilação, pois símbolos adicionados posteriormente podem não ser visíveis nas configurações finais de otimização... Esta é uma tal "nuance". Se alguma metaquota ler isto - você pode corrigir este erro... Os moderadores vigilantes irão definitivamente lê-lo...

Há também algo a ser acrescentado ao OnInit:

int OnInit()
{
...
//--- подключаем символы для тестера 
for(int i=0;i<SymbolsTotal(false);i++)
   {
   string name = SymbolName(i,false);
   SymbolSelect(name,false);
   Print (" i = ", i,"     name = ", name);   
   }
...
}

No próprio programa, colocar o caractere selecionado em uma variável de string se parece com isto:

string SymbolCur = SymbolName(DoubleToString(SIMBOL_1,0),false);


Naturalmente, há nuances, eu trago a implementação de acordo com meus propósitos.

De operações manuais, apenas uma vez (para cada corretor) salvando o arquivo de texto e organizando vírgulas nele, antes de copiar para enumerar.

Документация по MQL5: Основы языка / Переменные
Документация по MQL5: Основы языка / Переменные
  • www.mql5.com
Переменные должны быть объявлены перед их использованием. Для идентификации переменных используются уникальные имена. Описания переменных используются для их определения и объявления типов. Описание не является оператором. Индексом массива может быть только целое число. Допускаются не более чем четырехмерные массивы. Нумерация элементов...
 
Зачем мне знать, как там ордер превращается постепенно в позицию. Это не трейдерский вопрос, это внутритерминальный вопрос!
Esta não é uma pergunta de um comerciante, mas uma pergunta de software. Se você quer ser um comerciante puro, fique fora da programação e escreva seu TOR para profissionais. A maioria dos problemas dos quais você reclamou nos postos acima tem uma solução simples.
 
Aleksey Mavrin:

A quem o diz!

Se você é um programador e veio aqui para ganhar algum dinheiro com a programação - então inquestionavelmente!

Mas se você tem que descrever uma idéia da maneira mais simples, então nós temos degradação! Mas sinceramente, não quero discutir isso. Você mesmo está bem ciente disso. E você escreve - defendendo seu nicho de programação.

Coloquei um pedido para freelancer e eu mesmo escrevo... Um não impede o outro!

Oops)) E o que aconteceria se eu anunciasse os resultados do freelancing)))) Mas Shhh Tais coisas não podem dizer em voz alta))))

E as metaquotas - em geral, bem feitas, é claro. Você mesmo quer escrevê-lo. Se você quiser - peça-o! Todos estão felizes, tanto programadores como comerciantes)) É assim que deve ser, eles dão oportunidades a todos com suas atividades.

Muito obrigado por uma boa história! Eles têm mais do que o suficiente para compensar todas as outras falhas. Mas seria bom consertá-los também.

Eu recomendaria até mesmo não melhorar nada ainda, e o dopilit disponível.

Mas eles sabem melhor))

 
Михаил:

Realmente, o que há para discutir se você guarda os caracteres em um arquivo e os copia de lá para o código antes de compilá-los.

E com base em tais ações, você fala de "deficiências" do terminal.

Nada pessoal, você é apenas muito fraco como programador, eu desejo que você cresça e se desenvolva. Boa sorte!

 
Aleksey Mavrin:

O que há para discutir se você guarda os caracteres em um arquivo e os copia de lá para o código antes de compilá-los.

E com base em tais ações, você fala de "deficiências" do terminal.

Nada pessoal, você é apenas muito fraco como programador, eu desejo que você cresça e se desenvolva. Ótimo!

Você entendeu mal! Não sou um programador, nem por trabalho nem por educação!

Isto não me impede de escrever tudo o que preciso para microcontroladores, ou para andróides, ou em mql4 mql5. Eu até escrevi em 16 código e assembler. Você tem escrito) em código? Em real, 16 códigos de riqueza? Não é uma linguagem de alto nível, você precisa saber como a CPU é montada e funciona...

Chamar um código a uma lista local é um risinho...

Não preciso de nenhum truque, código ideal simples e direto. Mas em meu código a lógica é normalmente mais complexa do que em outros e é mais eficiente. Embora eu não possa competir com os programadores profissionais, é claro)) Mas é o pão e a manteiga deles, enquanto para mim é apenas um segundo hobby. Nem mesmo meu hobby principal. Posso soldar metal fino com um soldador e não queimá-lo, posso escrever um programa com muitas coisas... projetar e montar eletrônica simples... Nada disso é meu trabalho! )) Quero dizer, não estou interessado em encaixar em regras de linguagem sem sentido, estou interessado em resultados. E se você tiver que ir a ele em círculos, isso é uma pena. Era mais simples em µl4. E não vejo nenhuma razão objetiva para torná-lo mais complicado.

Quanto ao tópico deste tópico) Sugerir uma solução melhor.

O propósito que descrevi - para que antes de executar o programa, você possa selecionar nos pares de parâmetros de otimização da lista.

E também, queo testador possa passar pelos pares- este é o principal!

As opções dos especialistas em kodobase não oferecem)) Minha solução é o topo da elegância em comparação com as soluções kodobase.

É fácil criticar!

Você disse que minha implementação é ruim! Sugerir um melhor. Eu lhe agradeço!

Porque em algum momento voltarei à moeda múltipla... talvez.

Ou escreva: "Não consigo pensar em um melhor - desculpe!"

E sim - eu não recebo ordens paraescrever programas, não como programadores))
Как заказать торгового робота на MQL5 и MQL4
Как заказать торгового робота на MQL5 и MQL4
  • www.mql5.com
Главным преимуществом торговых терминалов MetaTrader является возможность создания автоматических торговых систем, способных совершать торговые операции без вмешательства трейдера, что позволяет исключить влияние психологии на результаты торговли. Для этого нужно сформулировать торговую стратегию и реализовать ее в виде программы на языке MQL...
 
Михаил:

Você não entendeu! Eu não sou um programador, nem por trabalho nem por educação!

Isso não me impede de escrever tudo o que preciso para microcontroladores ou para andróide, ou em mql4 mql5. Eu até escrevi em 16 código e assembler. Você tem escrito) em código? Em real, 16 códigos de riqueza? Não é uma linguagem de alto nível, você precisa saber como a CPU é montada e funciona...

Chamar um código a uma lista local é um risinho...

Não preciso de nenhum truque, código ideal simples e direto. Mas em meu código a lógica é normalmente mais complexa do que em outros e é mais eficiente. Embora eu não possa competir com os programadores profissionais, é claro)) Mas é o pão e a manteiga deles, enquanto para mim é apenas um segundo hobby. Nem mesmo meu hobby principal. Posso soldar metal fino com um soldador e não queimá-lo, posso escrever um programa com muitas coisas... projetar e montar eletrônica simples... Nada disso é meu trabalho! )) Quero dizer, não estou interessado em encaixar em regras de linguagem sem sentido, estou interessado no resultado. E se você tiver que ir a ele em círculos, isso é uma pena. Era mais fácil em µl4. E não vejo nenhuma razão objetiva para torná-lo mais complicado.

Quanto ao tópico deste tópico) Sugerir uma solução melhor.

O propósito que descrevi - para que antes de executar o programa, você possa selecionar nos pares de parâmetros de otimização da lista.

E também, que o testador possa passar pelos pares- este é o principal!

Não oferecer variantes de especialistas em kodobase)) Minha solução é o topo da elegância em comparação com as soluções kodobase.

É fácil criticar!

Você disse que minha implementação é ruim! Sugerir um melhor. Eu lhe agradeço!

Porque um dia voltarei à multimoeda... talvez.

Ou escreva: "Não consigo pensar em um melhor - desculpe!"

E sim - eu não recebo ordens paraescrever programas, não como programadores))

No caso de você estar se perguntando, eu também me interroguei com assembler nos meus anos de estudante, mas eu escrevi seriamente apenas em C, C++, com SQL no Postgre. E foi apenas para minha tese, mas o projeto era mais ou menos sério, sistema CAD, o que quer que fosse)

Estou feliz que você seja uma pessoa versátil) Você sabe que as bíblias em C e outros idiomas são muito mais complicadas do que a MQL5, é muito mais fácil imho. Você sabe, sobre seu nível - em seus cargos foram mencionadas as questões, cuja solução é simples, mas você repreendeu o terminal e o MQL, ou seja, em vez de aprender como fazer e desenvolver, você repreendeu o trabalho de outros, mesmo que não sem falhas, mas um trabalho tão árduo. Esta abordagem é estranha e incompreensível para mim. Mas talvez tenha sido apenas uma impressão e eu tenha me enganado.

Quanto ao tópico - já esqueci as nuances e sou preguiçoso demais para ler e digerir. Em resumo - se você quiser fazer uma busca por todos os caracteres durante a otimização - então no OnInit por número, o parâmetro de entrada é apenas o número de um símbolo, dois, três, como usado na coruja.

Se você selecionar manualmente símbolos específicos para automatizar - então sua solução é ruim, porque quando você muda de corretor com outros símbolos, precisa alterar o código. É mais fácil inserir manualmente dois símbolos. Se você for muito preguiçoso para inserir os símbolos, você pode inserir o número deles na visão geral do mercado.

 
Aleksey Mavrin:

Se você for preguiçoso demais para digitar os caracteres - numere-os na Market Review.

Eles não estão no Market Review tester até que sejam consultados diretamente pelo nome.


Michael:

Você disse que minha implementação é ruim! Sugerir um melhor. Eu lhe agradecerei!

Combinação de todas as moedas conhecidas em enumeração + sufixo como parâmetro de string?

 
Aleksey Mavrin:

Quanto ao tema - já esqueci as nuances e sou preguiçoso demais para lê-lo e cavar a fundo.

bom conversador)))) E você está me julgando))

À sua maneira... os números estão longe dos casais. É inconveniente. E é bom se houver apenas alguns pares, mas se você precisar de todos os pares?! E a propósito, você tem certeza de que não precisa disso?

Sim, você pode descobrir quantos pares existem na janela e descartar os valores extras fornecidos pelo testador... Mas já foi atirado pela tubulação, ou seja, opções de otimização menos úteis.

Além disso, durante a otimização, você não sabe em que par o processo está sendo executado. Você precisa abrir uma janela e contar, contar e contar! Você não vai ficar atolado?

No meu caso - só copiar-colar, uma vez para o corretor e pronto...

Você está me criticando?!

Copiar uma vez e trabalhar livremente, confortavelmente e claramente no futuro, ou contar constantemente os números na janela de visão geral do mercado... Isto é algum tipo de workaholismo, no apartamento ))))

Aleksey Mavrin
Aleksey Mavrin
  • www.mql5.com
Добавил тему Оптимизация. Граничные Условия Параметров Решаю задачку о автоматизации проверки стратегий, это типа как тут в соседней ветке описывалось, но по другому. Проблема :Разные стратегии имеют разный набор по кол-ву и типам оптимизируемых параметров. Решение:Нормировать все параметры к диапазону Добавил тему Вечерние размышления о...
 
Andrey Khatimlianskii:

Combinação de todas as moedas conhecidas em enumeração + sufixo como parâmetro de string?

Sim, também uma opção, mais ilustrativa do que a de Alexey. Mas os conjuntos são diferentes para os corretores. Provavelmente, haverá combinações não utilizadas, o que reduzirá a eficiência do testador.

Sim, e todas as moedas precisam encontrar e pontuar, é mais difícil do que uma cópia única. Eu pessoalmente)) Eu estava pensando nesta opção.

Talvez outra pessoa conheça alguma outra opção)))