ATcl - Intérprete Tcl para MT4 - página 8

 

O roteiro está pronto e incluído na biblioteca da ATcl.
Na biblioteca está localizada no caminho Libraries/ATcl/app/mq45dist.tcl

Precisa (de repente) tcl, e zip para trabalhar :-)

Se você executá-lo sem parâmetros, ele pedirá para selecionar qualquer arquivo de projeto e abrirá um console para exibir o log.

Se você passar o nome do arquivo como parâmetro, ele não abrirá nenhuma janela, ele funcionará como uma aplicação de console.

Estou anexando o roteiro tcl.

Além de acrescentar o roteiro, alguns bugs foram corrigidos,
e relançou os arquivos da biblioteca em http://nektomk.ru/ru:atcl:install e SourceForge https://sourceforge.net/projects/mt-atcl/

ATcl
  • nektomk.ru
Рад представить вам библиотеку ATcl v1 beta - интерпретатор Tcl для MT4. Расширяте возможности ваших программ MQL, используйте СУБД, дополняйте сетевыми средствами, интегрируйте их с любыми программами используя Tcl.
Arquivos anexados:
 

Outro, e mais fácil (e mais urgente) uso : configurações de software/especialistas/painéis e outras coisas. Ou seja, todos os tipos de arquivos de configuração :-)

Com ATcl é muito fácil manter tudo isso em arquivos de texto simples.

# комментарии начинаются с # и идут до конца строки

# именованное значение "use_gui"
set use_gui true

# список (вектор) значений
set vector { 1.0 2.0 0.12 }

# список из список (матрица)

set matrix {
  { 1 2 3 }
  { 4 5 6 }
  { 7 8 9 }
}

# хеш ( ключ->значение)
set option(key1) "например строка"
set option(key2) "другая строка"

# можно сразу

array set option {
   key3 0.21
   another_key { можно задавать произвольные значения }

}

e é muito fácil de ler tudo isso no MT4:

ATcl *tcl=new ATcl;     // создадим новый интерпретатор (их можно много делать)

tcl.Eval("source MQL4/Files/myconfig.tcl"); // прочесть конфигурацию

bool use_gui = tcl.Long("use_gui",0); // взять переменную "use_gui" как long, или вернуть 0 по умолчанию

double vector[];
tcl.ToArray("vector",vector); // копировать список в массив.

double matrix[][3];
tcl.ToArray("matrix",0,matrix[0]); // читать 1-ю строку матрицы
tcl.ToArray("matrix",1,matrix[1]); // и так далее
tcl.ToArray("matrix",2,matrix[2]);

string option_key1=tcl.String("option(key1)",""); // хеши можно читать указывая полное имя
string option_key2=tcl.String("option","key2",""); // или отдельно ключ, значение

delete tcl; // всё прочитали, интерпретатор больше ненужен

A propósito, como bônus, você também pode ler as variáveis de ambiente embutido/sistema :-)

string APPDATA=tcl.String("env","APPDATA",""); // окружение Windows - %APPDATA%
string TEMP=tcl.String("env","TEMP","");     // рекомендованный каталог для временных файлов %TEMP%

 

Com base em um post na parte inglesa do fórum e para explicar

"Por que tudo isso é necessário e por que é assim".

Esboçou um artigo, na minha opinião, ele se revela bastante bom e útil. Dedicado à questão de por que outro idioma pode ser útil e como ele é selecionado.

Primeiro rascunho da primeira parte - http://nektomk.ru/atcl:why este vai para a definição de perguntas e identificação de requisitos.

Se houver perguntas, comentários, sugestões, eu responderei e acrescentarei a isso :-)

A segunda parte é uma discussão de todos os idiomas e sistemas mencionados. Obviamente, é altamente especializada e requer um histórico

 

Não escrevo tantos textos há muito tempo :-) mas desde que prometi e comecei, tenho que fazê-lo...

como uma continuação da primeira parte sobre a seleção do idioma,

Eu esbocei a segunda parte de http://nektomk.ru/atcl:whynot, onde eu olhei para alguns sistemas.

Mesmo pessoas distantes da ATcl e idéias de ampliar as capacidades de MQL podem achá-la útil e não sem interesse.

Será publicado juntamente com a primeira parte em blogs locais. Basta fazer uma "pausa" e reler + gramática correta e reviravoltas da fala :-)

atualização: a primeira parte também é publicada nos blogs locais https://www.mql5.com/ru/blogs/post/718610 para que você possa lê-la sem sair do site

выбор языка, часть 2
  • nektomk.ru
Взял смелость и в статье объединяю большие «числогрызы» в одну главу. Они не решат наших задач про «взаимодействие с миром», про GUI, и так далее, но они востребованя. На них, с их помощью, благодаря им делаются и отрабатываюся торговые стратегии. Начну с R, так получилось что с практикой его применения в MT знаком очень плотно. Фактически это...
 
Com base na correspondência - instruções de instalação com o máximo de detalhes

1. Você precisa instalar o Tcl 32 bit para Windows

Infelizmente o ActiveState recentemente (um ou dois meses atrás) deixou de suportar 32bit e
removeu o instalador dos downloads disponíveis. Tinha sido a distribuição mais conveniente para Windows
e a ATcl foi desenvolvida sobre ela. Ainda não testei outras distribuições, vou verificar este fim de semana.

------------------------------
Instalando o Tcl 32bit no Windows
------------------------------

1.1 Distribuição BAWT

1.1.1 Faça o download da distribuição em importação de funções a partir de DLL".
BAWT - Downloads
  • Paul Obermeier
  • www.bawt.tcl3d.org
BAWT - Build Automation With Tcl
 

Boa tarde interessado em seu projeto, mas há um problema com a eliminação do MT4 tanto EAs quanto indicadores, poderia por favor informar qual é a razão possível?

 
kovtynmen:

Boa tarde interessado em seu projeto, mas há um problema com a eliminação do MT4 tanto EAs quanto indicadores, poderia por favor informar qual é a razão possível?

Eu não entendo o problema ;-)

o que você quer dizer com "remove tanto EAs quanto indicadores" ?

 
Maxim Kuznetsov:

Eu não entendo o problema ;-)

o que significa "apagar tanto EAs quanto indicadores" ? explicar o ponto, se você puder com capturas de tela

Sim, claro, aqui estão as capturas de tela de log

Painel de Especialistas em Comércio

Indicador personalizado CawtExcel

 
kovtynmen:

Sim, claro, aqui estão as capturas de tela de log


Quando você executar o Expert Advisor/indicator, certifique-se de ativar a importação de DLL

2. na instrução anterior é destacado - se você instalou a distribuição BAWT, você precisa copiar tcl86.dll para tcl86t.dll no diretório c:/tcl/bin, ou seja, adicionar a letra t ao nome da dll

não deve haver outros problemas, exceto permitir o uso de DLL no nome do terminal e do distribuidor - apenas em VDS limpo, colocar MT4, colocar BAWT e biblioteca ATcl da sourceforge (não "variant-in-development", mas disponível publicamente). O vôo está ok

 
Maxim Kuznetsov:

1. Quando você executar EA/indicador, certifique-se de que a importação da DLL esteja habilitada

2. na instrução anterior é destacado - se você tem a distribuição BAWT, você precisa copiar tcl86.dll para tcl86t.dll no diretório c:/tcl/bin, ou seja, adicionar a letra t ao nome da dll

não deve haver outros problemas, exceto permitir o uso de DLL no nome do terminal e do distribuidor - apenas em VDS limpo, colocar MT4, colocar BAWT e biblioteca ATcl da sourceforge (não "variant-in-development", mas disponível ao público). O vôo está ok

Obrigado, já experimentei tudo e verifiquei que o resultado é o mesmo. Tentarei tudo novamente amanhã junto com o mt4. Embora haja a possibilidade de que possa ser algo com direitos de acesso ao vencer 10.