RStudio integration with Python! Trasnlated from spanish forum due to a lack of responses in spanish...
Я получаю сообщение об ошибке при копировании данных, даже если я запускаю команду из исходного сценария, используя команду «source_python» из пакета «reticulate».
---
На сегодня есть два варианта:
1. С использованием только R
2. С использованием R и Python
Вариант 1.
а) Вам нужно установить библитеку "MetaTrader" которую разработчики зарубили и не стали разрабатывать дальше. В приложении.
б) выполнить скрипт
# Constant server = "AlpariEvrasia-MT5-Demo" login = 50521112L symbol = "GBPJPY" tf = 4L bar = 20000L options("lubridate.week.start" = 1) Dig <- 3L # Пропишите свои данные (broker, login) # Library library(MetaTrader) library(dplyr) # Function GetCotir <- function(sym, per, start, count){ MT5Initialize() MT5CopyRatesFromPos(symbol = sym, timeframe = per, start_pos = start, count = count) ->.; as.data.frame(.) -> rates MT5Shutdown() return(rates) } #---------------- GetPrice <- function(rates){ rates %>% select(1:7) %>% mutate(Med = round((high + low)/2, Dig), Typ = round((high + low + close)/3, Dig), Wg = round((high + low + 2*close)/4, Dig) ) } GetCotir(sym = symbol, per = tf, start = 1L, count = bar )->rates GetPrice(rates = rates) -> price > str(rates) 'data.frame': 20000 obs. of 8 variables: $ time : num 1.59e+09 1.59e+09 1.59e+09 1.59e+09 1.59e+09 ... $ open : num 135 135 135 135 135 ... $ high : num 135 135 135 135 135 ... $ low : num 135 135 135 135 135 ... $ close : num 135 135 135 135 135 ... $ tick_volume: num 175 117 106 153 104 100 105 180 137 168 ... $ spread : num 12 8 13 5 14 7 9 8 13 12 ... $ real_volume: num 0 0 0 0 0 0 0 0 0 0 ... > str(price) 'data.frame': 20000 obs. of 10 variables: $ time : num 1.59e+09 1.59e+09 1.59e+09 1.59e+09 1.59e+09 ... $ open : num 135 135 135 135 135 ... $ high : num 135 135 135 135 135 ... $ low : num 135 135 135 135 135 ... $ close : num 135 135 135 135 135 ... $ tick_volume: num 175 117 106 153 104 100 105 180 137 168 ... $ spread : num 12 8 13 5 14 7 9 8 13 12 ... $ Med : num 135 135 135 135 135 ... $ Typ : num 135 135 135 135 135 ... $ Wg : num 135 135 135 135 135 ...
Удачи
Я обнаружил ошибку, которая не позволила мне скопировать данные из метатрейдера в R.
Данные должны быть преобразованы из «np.ndarray ()» в «pd.Dataframe ()», чтобы R мог принять формат данных.
В противном случае интеграция в RStudio через Python с использованием «библиотеки (сетчатой)» будет работать идеально, если вы найдете нужные типы данных для адаптации информации.
Функции mt5.Buy (), mt5.Sell () и mt5.symbol_info_tick ("EURUSD") также работают. !!
---
***
Спасибо за ответы !
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте!
Сначала я принимаю меры к R, и один из вопросов, который меня заинтересовал сразу после запуска, заключался в том, был ли доступ ко всем функциям, которые Metatrader для Python предлагает от R.
Сначала проверьте документацию, чтобы увидеть, реализовал ли сегодня metatrader такую интеграцию. Не очень недовольный результатом, из-за моего низкого уровня R, я попытался немного напрячь свой мозг
И я нашел решение. R имеет библиотеки для интеграции Python. Metatrader5 имеет интеграцию с Python. Это может сработать ...
***
это сработало !! Metatrader5 открылся для меня! Но это еще не все ... Было ужасно неутешительно, когда я узнал, что большинство функций по какой-то причине не работают ...
При попытке скопировать предложения это случилось со мной:
> rate = mt5 $ copy_rates_from_pos ("GBPUSD", mt5 $ TIMEFRAME_D1, 0, 10)
Ошибка в py_call_impl (вызываемый, points $ args, points $ keyword): SystemError: <встроенная функция copy_rates_from_pos> возвратил результат с множеством ошибок
Я открываю форум.