Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Em termos de tecnologia de software, potencialmente sim. As bibliotecas podem ser chamadas do otimizador, desde que não estejam na nuvem.
do lado NS - como você o imagina?
No otimizador é feito um passe e os dados são escritos no arquivo, depois são passados para o treinamento da rede, após o treinamento os resultados da avaliação do treinamento são devolvidos ao MT4/5 e a rede (regras) é escrita no arquivo. E a outra visão é quando usamos os arquivos gravados da lógica NS para otimizar (as variantes de NS) e fixar indicadores padrão de TS.
Eu ampliei a demonstração do gráfico Tk - agora ele mostra também a tabela de pedidos.
O código MQL que se refere à tabela de pedidos
- seleciona todas as suas ordens e as envia para o tcl no método OnOrderList
- na saída recebemos 3 listas de bilhetes - os que são novos, os que mudaram e os que foram eliminados
e o método Tcl que faz o trabalho principal :
- recebe uma nova lista de pedidos
- em comparação com chamadas anteriores
- constrói 3 listas (novas, alteradas, apagadas).
- cria uma mesa ...que na verdade é uma árvore e pode ser feita em vários níveis.
# надо обновить внутренние структуры
# и вернуть триплет (список из трёх списков)
# 1 - список новых ордеров
# 2 - ордера которые поменялись
# 3 - ордера которые удалены
method OnOrderList { orderList } {
set created {}
set changed {}
set removed {}
foreach order $orderList {
set ticket [ lindex $order 0 ]
set known($ticket) $order
if { ! [ info exists Orders($ticket) ] } {
# новый тикет
# добавить в список свежесозданных
lappend created $ticket
set Orders($ticket) $order
continue
}
if { $Orders($ticket) != $order } {
# что-то поменялось
# добавить в список изменённых
set Orders($ticket) $order
lappend changed $ticket
}
}
foreach ticket [ array names Orders ] {
if { ! [ info exists known($ticket) ] } {
# прежнего ордера нет в новом списке - значит удалён
lappend removed $ticket
unset Orders($ticket)
}
}
# обновить грфику :-)
foreach ticket $removed {
my OnRemoveOrder $ticket
}
foreach ticket $changed {
my OnChangeOrder $ticket
}
foreach ticket $created {
my OnCreateOrder $ticket
}
return [ list $created $changed $removed ]
}
tudo é muito compacto.
Você pode usar os pontos fortes dos dois idiomas - a MQL está próxima do ambiente comercial e conta rapidamente em arrays,
O Tcl pode facilmente lidar com listas e hashes.
A MQL implementa um algoritmo de negociação difícil enquanto os scripts lidam com a interação com o mundo e o usuário.
O arquivo está anexado.
Um roteiro para exportar citações para o Excel
Eu fiz um pequeno roteiro para exportar citações diretamente para o Excel.
Sem nenhuma entrada em CSV ou qualquer parâmetro - basta jogá-lo no gráfico, a planilha Excel será aberta e todas as citações serão copiadas para dentro dela.
Comentei o texto na medida do possível e o anexei. Eu forneci os detalhes do roteiro em meu site http://nektomk.ru/atcl:ratestoexcel.
O volume vai além do fórum, portanto, lá. Talvez quando eu estiver com vontade, eu a duplique no blog local para que as informações não se percam com certeza.
O roteiro anexo
PS/ Alguém tem uma marca - arquivo para compilação em lote de mql ? que irá mudar um mqh, empurrar marca e reconstruir um monte de mq4 que estão listados em dependências...
atualizar/duplicar o artigo no blog local https://www.mql5.com/ru/blogs/post/718304 - agora provavelmente não vai desaparecerO carteiro trabalha, mas ainda precisa de mais trabalho...
Enquanto isso, uma pergunta para as pessoas - será que o GUI-Builder será solicitado?
para Tk, eles estão lá, mas devido ao fato de que os scripts em texto escrevem mais rápido do que em desenho, eles são pouco requisitados.
algo como isto :
PS/ o resultado de tal GUI-builder pode ser iniciado a partir do MT4...
o carteiro trabalha, mas ainda precisa de mais trabalho a ser feito
mas enquanto isso, uma pergunta para as pessoas - haverá uma demanda de GUI-Builder ?
para Tk eles são, mas devido ao fato de que os scripts são mais rápidos de escrever em texto do que em desenho, eles não são muito procurados.
algo como isto :
PS/ O resultado de tal construtor de GUI e agora com a ajuda de "tal e tal mãe" pode ser iniciado a partir do MT4...
Que coisas interessantes... somente como aplicá-las?
Ah, eu tenho uma idéia para apenas interfaces gráficas - criando uma lógica comercial como uma árvore de decisão! Ou seja, criar uma árvore no editor gráfico (ou seja, shell) e usar um botão para convertê-la em regras simples, ou mesmo diretamente em código! Entretanto, as regras também podem ser lidas em código de uma maneira muito compacta.
Por que precisamos dele? Esta abordagem permite detalhar a estratégia comercial, por exemplo, podemos facilmente dividi-la em séries temporais - não apenas decidindo se devemos ou não comercializar, mas também se devemos comercializar neste momento e neste momento de uma maneira diferente. Os sinais de uma mudança de tática são muitos e variados, mas não é muito conveniente escrevê-la no código e, em segundo lugar, é difícil de ler visualmente - você pode cometer muitos erros.
Interessado em tal idéia para aplicar seus talentos?
Que coisas interessantes... mas como aplicá-las?
Ah, eu tenho uma idéia para apenas interfaces gráficas - criando uma lógica comercial como uma árvore de decisão! Ou seja, criamos uma árvore no editor gráfico (ou seja, shell) e usamos um botão para convertê-la em algumas regras simples ou até mesmo diretamente em código! Entretanto, as regras também podem ser lidas em código de uma maneira muito compacta.
Por que precisamos dele? Esta abordagem permite detalhar a estratégia comercial, por exemplo, podemos facilmente dividi-la em séries temporais - não apenas decidindo se devemos ou não comercializar, mas também se devemos comercializar neste momento e neste momento de uma maneira diferente. Os sinais de uma mudança de tática são muitos e variados, mas não é muito conveniente escrevê-la no código e, em segundo lugar, é difícil de ler visualmente - você pode cometer muitos erros.
Interessado em tal idéia para uma aplicação de seus talentos?
Não entendo a idéia de uma "árvore de decisão gráfica". :-) talvez seu talento não seja suficiente :-)
Eu não entendo nada da "árvore de decisão gráfica". :-) talvez você não seja talentoso o suficiente :-)
Imagine uma tabela de dados com um conjunto de regras
Estas regras estão dispostas em código da seguinte forma
Se tivermos um valor de regra e um valor calculado (valor indicador/tempo/ outro padrão) coincidir, então uma ação comercial é realizada, por exemplo.
Este método de decisões comerciais é muito compacto e versátil - podemos codificar de forma tão simples, por exemplo, muitas estratégias - dando-lhes diferentes símbolos mágicos.
Mas o senão é que precisamos apenas do ambiente para tal estilo de programação. Este ambiente deve parecer uma árvore de decisão (um diagrama de blocos primitivo) onde podemos criar blocos (resultado do cálculo por exemploarr_iDelta_Max_D1 com valores predefinidos (1,2,3,4 ...n) e/ou com possibilidade de limitar valores de e para, criando muitos grupos diferentes desta forma), a partir deste bloco ramificará para cada valor de variável ou faixa de valores de variável, e assim por diante até o próximo bloco e assim por diante. Assim, teremos um conjunto de regras, cada uma das quais, a propósito, não tem que utilizar todos os blocos.
Isto o faz entender? Se você precisar de explicações, por favor, pergunte.
Apresentar uma tabela de dados com um conjunto de regras
Estas regras são codificadas da seguinte forma
Se tivermos uma coincidência entre os valores das regras e os valores calculados (valor indicador/tempo/ outro padrão), então, por exemplo, uma ação comercial é realizada.
Este método de decisões comerciais é muito compacto e versátil - podemos codificar de forma tão simples, por exemplo, muitas estratégias - dando-lhes diferentes símbolos mágicos.
Mas o senão é que precisamos apenas do ambiente para tal estilo de programação. Este ambiente deve parecer uma árvore de decisão (um diagrama de blocos primitivo) onde podemos criar blocos (resultado do cálculo por exemploarr_iDelta_Max_D1 com valores predefinidos (1,2,3,4 ...n) e/ou com possibilidade de limitar valores de e para, criando muitos grupos diferentes desta forma), a partir deste bloco ramificará para cada valor de variável ou faixa de valores de variável, e assim por diante até o próximo bloco e assim por diante. Assim, teremos um conjunto de regras, cada uma das quais, a propósito, não tem que utilizar todos os blocos.
Isto o faz entender? Se você precisar de explicações, por favor, pergunte.
Eu vi isso no tcl - um ambiente onde eles conectam blocos com flechas... foi assim que eles programaram o processamento de som/vídeo/gráfico. http://wiki.tcl.tk/8565 parece ser muita coisa, eles até enfiaram o Maxima em algum bloco
Se for - prestará muita atenção
Como Xcos (http://www.scilab.org/en/scilab/features/xcos) e similares na moda em simulações ?
Eu já vi isso no tcl - ambiente onde eles conectam os blocos com flechas... foi assim que eles programaram o processamento de som/vídeo/gráfico. http://wiki.tcl.tk/8565 parece ser muita coisa, eles até enfiaram o Maxima em algum bloco
Se for - prestará muita atenção
Sim, esta é a abordagem! O principal é não complicar as coisas, e fazer um intérprete correto, para que todos os blocos sejam coletados em uma linha (um ramo), com o qual o programa em MQL já funcionará.
Sim, esta é a abordagem! O principal é não complicar, e fazer um intérprete correto, para que todos os blocos sejam coletados em uma linha (uma filial), com a qual o programa já irá trabalhar em MQL.
Eu não acho que quero complicar demais, por exemplo, não quero mexer com o código bwise.
No máximo, vou adaptá-lo para usar junto com a ATcl (isto é, transferir dados da Mql para suas entradas) e pegar as saídas.
Naturalmente, terei que escrever alguns HowTo "como desenhar quadrados e anexá-los à EA". E pratique o inglês ao se comunicar com o(s) autor(es) :-)