test.py started test.py 1 1
Traceback (most recent call last): test.py 1 1
MT5Initialize() test.py 1 1
NameError: name 'MT5Initialize' is not defined test.py 1 1
test.py finished in 389 ms 1 1
Компилироваться конечно не будет, а будет виден в навигаторе как *.py программа и запускаться скрыто в отдельном потоке терминала.
Общение с терминалом через штатную библиотеку MetaTrader 5 для Питона.
Теперь дошло, это будет на подобие питоновского визуального ноутбука, только код запускается весь целиком. Я уж губу раскатал на компиляцию, а компиляция была бы вообще улёт. Дело в том что при стандартной компиляции .py в .exe, очень слабая защита от реверс-инжиниринга. Можно сказать никакая. Если бы .py компилировался в .ex5 то очень бы поднял mql5 в плане того, что ого mql5 компилирует в исполняемый хорошо защищенный .ex5. У пайтона это глобальная проблема, подумайте над этим. Тем более что компиляция пайтона в .exe, использует Си или С++ подобный компилятор. А в mql5 LLVM.
Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 182019, 23:11:46) [MSC v.191664 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()"for more information.
>>>
= RESTART: C:\Users\barab\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Scripts\Python\metatrader5-test.py
Traceback (most recent call last):
File "C:\Users\barab\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Scripts\Python\metatrader5-test.py", line 2, in <module>
from MetaTrader5 import *
File "E:\Programs\Python\Python38\lib\site-packages\MetaTrader5\__init__.py", line 35, in <module>
from .C import *
ImportError: DLL load failed while importing C: Не найден указанный модуль.
>>>
Терминал MetaTrader 5 отдает бары только в пределах истории, доступной пользователю на графиках. Количество баров, которые доступны пользователю, задается в настройках параметром "Макс. баров в окне".
Если действительно дело в количесте баров, то можно либо изменить предел, либо поправить скрипт чтобы брал ближайшие минутки, например, за 2020 год - должно заработать
Торговая платформа обладает множеством настроек, что позволяет организовать работу в ней так, как это удобно именно вам. Выполните команду " Настройки" меню "Сервис" или нажмите "Ctrl+O". Графики — общая настройка отображения ценовых графиков, а также настройка параметров управления объектами: выделение объектов после их создания, немедленная...
Компиляция для питон скриптов в редакторе означает запуск на исполнение внутри редактора.
Посмотрите на вывод в окнах ошибок и журнале. В журнале показывается основной вывод, а в ошибках - вывод stderr.
Компиляция для питон скриптов в редакторе означает запуск на исполнение внутри редактора.
Посмотрите на вывод в окнах ошибок и журнале. В журнале показывается основной вывод, а в ошибках - вывод stderr.
Ясно. В окне "Ошибки" ошибок нет,
а в окне "Журнал" скрипт вероятно ожидает моего действия
Как я понимаю, обратной связи просто нет (возможно пока нет).
Тогда я пытаюсь запустить пример из поста #1 ( https://www.mql5.com/ru/forum/306688 ) - инсталлировал пакет matplotlib и MetaTrader5.
Пытаюсь запустить пример из первого поста
В ошибках
В журнале
и ничего не происходит (терминал при этом запущен).
Компиляция для питон скриптов в редакторе означает запуск на исполнение внутри редактора.
Посмотрите на вывод в окнах ошибок и журнале. В журнале показывается основной вывод, а в ошибках - вывод stderr.
То есть скрипт .py не будет компилироваться в .ex5 ?
И запускаться на выполнение из навигатора.
Ясно. В окне "Ошибки" ошибок нет,
а в окне "Журнал" скрипт вероятно ожидает моего действия
Как я понимаю, обратной связи просто нет (возможно пока нет).
Тогда я пытаюсь запустить пример из поста #1 ( https://www.mql5.com/ru/forum/306688 ) - инсталлировал пакет matplotlib и MetaTrader5.
Пытаюсь запустить пример из первого поста
В ошибках
В журнале
и ничего не происходит (терминал при этом запущен).
Не поставлена библиотека MetaTrader5, сделайте:
все работает:
То есть скрипт .py не будет компилироваться в .ex5 ?
И запускаться на выполнение из навигатора.
Компилироваться конечно не будет, а будет виден в навигаторе как *.py программа и запускаться скрыто в отдельном потоке терминала.
Общение с терминалом через штатную библиотеку MetaTrader 5 для Питона.
Не поставлена библиотека MetaTrader5, сделайте:
все работает:
Библиотека стоит:
(была поставлена сразу вместе с matplotlib)
Добавлено: и не запускается в питоне:
Компилироваться конечно не будет, а будет виден в навигаторе как *.py программа и запускаться скрыто в отдельном потоке терминала.
Общение с терминалом через штатную библиотеку MetaTrader 5 для Питона.
Теперь дошло, это будет на подобие питоновского визуального ноутбука, только код запускается весь целиком.
Я уж губу раскатал на компиляцию, а компиляция была бы вообще улёт.
Дело в том что при стандартной компиляции .py в .exe, очень слабая защита от реверс-инжиниринга. Можно сказать никакая.
Если бы .py компилировался в .ex5 то очень бы поднял mql5 в плане того, что ого mql5 компилирует в исполняемый хорошо защищенный .ex5.
У пайтона это глобальная проблема, подумайте над этим. Тем более что компиляция пайтона в .exe, использует Си или С++ подобный компилятор.
А в mql5 LLVM.
Удалил питон. Поставил 3.8.1 x64.
При запуске в Python теперь такие ошибки:
Библиотека стоит:
(была поставлена сразу вместе с matplotlib)
Добавлено: и не запускается в питоне:
У вас Питон 3.8, поставьте лучше 3.7.6, так как все равно множество библиотек еще не готовы к 3.8
1) С командной строки проверьте скрипт
2) Удостоверьтесь, что путь до питона есть в PATH
3) Удостоверьтесь, что есть всего одна копия Питона и нет конфликтов с другими версиями
4) Удостоверьтесь, что в настройках редактора путь именно до той единственной копии Питона
Вполне возможен зоопарк из косвенно установленных Питонов из под разных сред типа Visual Studio.
Тогда я пытаюсь запустить пример из поста #1 ( https://www.mql5.com/ru/forum/306688 ) - инсталлировал пакет matplotlib и MetaTrader5.
Пытаюсь запустить пример из первого поста
В ошибках
В журнале
и ничего не происходит (терминал при этом запущен).
Нужно подождать немного - скрипт запрашивает данные с 28.01.2019 - это требует времени.
Вторая возможная причина - в терминале указано ограниченное значение "Макс. баров в окне".
В справке явно указано https://www.mql5.com/ru/docs/integration/python_metatrader5/mt5copyratesfrom_py
Если действительно дело в количесте баров, то можно либо изменить предел, либо поправить скрипт чтобы брал ближайшие минутки, например, за 2020 год - должно заработать