Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 252

 
СанСаныч Фоменко:

Питон - это замечательно, но нужен МКЛ4.

Есть пакет Rserve. Вот мой перевод аннотации

 Rserve - сервер TCP/IP, который позволяет другим программам использовать средства R с различных языков без потребности инициализировать R или ссылку к библиотеке R. У каждого соединения есть отдельная рабочая область и рабочий каталог. Клиентские реализации доступны для популярных языков, таких как C/C++ и Java. Rserve поддерживает удаленное соединение, аутентификацию и передачу файлов.

Основная цель Rserve состоит в том, чтобы обеспечить интерфейс, который может использоваться применениями, чтобы выполнить вычисления в R. Наш опыт с другими способами связи показал, что есть три основных момента, которые рассмотрят, разрабатывая новую систему: разделение, гибкость и скорость.

Важно отделить систему R от самого применения. Одна причина состоит в том, чтобы избежать любой зависимости от языка программирования применения, так как собственный прямой интерфейс к R (Чемберс, 1998) применим с языка C только (R Рабочая группа Разработки, 2003). Другой аспект прибывает из факта, что тесная интеграция с R более подвержена ошибкам, потому что применение должно принять во внимание внутренности R. С другой стороны, разработчики приложений хотят, чтобы интерфейс был очень гибок и использовал большинство средств R. Наконец скорость - ключевой элемент, потому что цель состоит в том, чтобы предоставить пользователю желаемые результаты быстро без потребности запуска сеанса R с нуля.

Клиент-серверное понятие позволяет нам удовлетворять все три ключевых требования. Вычисление сделано ядром Rserve, которое является сервером, отвечая на запросы от клиентов, таких как применения. Коммуникация между Rserve и клиентом сделана через сетевые сокеты, обычно по протоколу TCP/IP, но другие изменения также возможны. Это позволяет использованию центрального Rserve от удаленных компьютеров, использованию нескольких Rserve удаленным клиентом распределять вычисление, но также и местную связь на единственной машине.

Один Rserve может служить многократным клиентам одновременно. Каждое соединение с Rserve  получает свое собственное пространство данных и рабочий каталог. Это означает, объект создавается одним соединением, не никогда не влияют на другие соединения. Дополнительно каждое соединение может произвести локальные файлы, такие как изображения, создаваемые устройством растрового изображения R, не вмешиваясь в другие соединения. Каждое применение может открыть многократные соединения, чтобы обработать параллельные задачи.

Передача данных между применением и Rserve выполнена в двоичной форме, чтобы получить скорость и минимизировать сумму переданных данных. Промежуточные объекты хранятся в Rserve, поэтому только предметы интереса должны быть переданы клиенту

 Кроме связи с ядром R у Rserve есть также интегрированная аутентификация и протокол передачи файлов, который делает Rserve подходящим для использования на отдельных машинах. Аутентификация пользователя обеспечена, чтобы добавить уровень безопасности для удаленного использования. Передача файлов позволяет копировать файлы, необходимых для вычисления или произведенных R от клиента к серверу и наоборот.

В настоящее время Rserve поддерживает две основных группы команд для связи с R: создание объектов в R и оценке кода R. Большинство основных объектов, таких как числа, строки или векторы можно создать через создание прямого дополнения. Содержание объектов отправлено в двоичной форме от клиента к серверу.

Это обеспечивает эффективный способ транспортировать данные, необходимые для оценки. Все объекты всегда передаются значением, чтобы разделить пространства данных клиента и сервера. Таким образом и клиент и сервер свободен избавиться от данных в любое время, предотвращая катастрофические отказы, которые свойственны от других способов связи, где системы разделяют те же данные физически.

Вторая основная командная группа - оценка кода R. В противоположность созданию объекта такой код отправлен в открытом тексте Rserve и обработан, как будто код был введен на консоли в R. Полученный объект оценки можно передать обратно в двоичной форме клиенту, если требуется. Большинство типов R поддерживается, включая скалярные числа, строки, векторы, списки (следовательно классы, фреймы данных и т.д.), лексические объекты и т.д. Это позволяет Rserve возращать назад все модели клиенту. Клиент может решить не получить любые объекты, который полезен, настраивая промежуточные объекты в R, которые не непосредственно относятся к клиенту.

Rserve предоставляет две основных услуги обработки ошибок. Три возможных результата оценки – успешная оценка, ошибка периода выполнения по ошибке синтаксического анализатора и коду. Состояние всегда возвращается к клиентскому приложению, чтобы позволить соответствующее действие. Так как Rserve - просто уровень между применением и R, все еще возможно влиять на обработку ошибки периода выполнения в самом R, например, с ошибочной опцией или командой попытки.

Типичное использование средств Rserve должно загрузить все необходимые данные в R, выполнить вычисления согласно вводу данных пользователем, такие как конструкция моделей, и передать результаты обратно применению для отображения. Все данные и объекты персистентные, пока соединение не закрыто. Это позволяет применению открывать соединение рано, например, когда пользователь сначала специфицировал набор данных, передайте все необходимые данные серверу и реагируйте на ввод данных пользователем оперативными вычислениями желаемых моделей или оценок. Так как результаты не находятся в текстовой форме, отсутствует утомительный парсинг результатов.

Интерфейс к Rserve модульный и задокументирован, предоставив доступ к Rserve от любого языка приложения или языка программирования, который поддерживает сокеты, включая текущие языки сценариев и языки программирования. Мы реализовали клиент для Rserve в чистом Java, который взаимодействует через интерфейс к большинству средств Rserve и отображает все объекты, доступные в Rserve в собственные объекты Java или классы. Использование клиента Java проиллюстрировано в разделе в качестве примера.


 

 

Есть пакет на  Java, который дает доступ к этому серверу.

Вот если бы переписать этот пакет с Java на МКЛ4...., то мы бы получили настоящий доступ к R из советников 

Так есть же статья на эту тему. Пробуйте. Мне удобно все через R.
 
СанСаныч Фоменко:


Есть пакет на  Java, который дает доступ к этому серверу.

Вот если бы переписать этот пакет с Java на МКЛ4...., то мы бы получили настоящий доступ к R из советников 

Отличное владение английским!

Ну а пакет возьмите, да и перепишите...

Проблема?

 

СанСаныч.

Вы не перевели часть касающуюся Windows систем. Из-за этого исключения я использовал RServer. 

 

кто нибудь знает почему котировки уже нельзя скачать с финама?

 

library(rusquant)
getSymbols("SPFB.RTS",src = "Finam",period="5min",from = Sys.Date()-1)
Error in download.file(stock.URL, destfile = tmp, quiet = !verbose) :
  cannot open URL 'http://195.128.78.52/table.csv?d=d&market=1&f=table&e=.csv&dtf=1&tmf=1&MSOR=0&sep=1&sep2=1&at=1&p=3&em=17455&df=14&mf=11&yf=2016&dt=15&mt=11&yt=2016&cn=SPFB.RTS&datf=1'
In addition: Warning message:
In download.file(stock.URL, destfile = tmp, quiet = !verbose) :
  InternetOpenUrl failed: 'Не удается установить связь с сервером'
 
mytarmailS:

кто нибудь знает почему котировки уже нельзя скачать с финама?

 

library(rusquant)
getSymbols("SPFB.RTS",src = "Finam",period="5min",from = Sys.Date()-1)
Error in download.file(stock.URL, destfile = tmp, quiet = !verbose) :
  cannot open URL 'http://195.128.78.52/table.csv?d=d&market=1&f=table&e=.csv&dtf=1&tmf=1&MSOR=0&sep=1&sep2=1&at=1&p=3&em=17455&df=14&mf=11&yf=2016&dt=15&mt=11&yt=2016&cn=SPFB.RTS&datf=1'
In addition: Warning message:
In download.file(stock.URL, destfile = tmp, quiet = !verbose) :
  InternetOpenUrl failed: 'Не удается установить связь с сервером'

скорей всего сменился ip сервера,он же вам пишет -сервер недоступен и не пингуется.

попробуйте заменить на такой ip 78.41.196.47 или еще проще прописав export.finam.ru

вот так работает через браузер

78.41.196.47/table.csv?d=d&market=1&f=table&e=.csv&dtf=1&tmf=1&MSOR=0&sep=1&sep2=1&at=1&p=3&em=17455&df=14&mf=11&yf=2016&dt=15&mt=11&yt=2016&cn=SPFB.RTS&datf=1
 
mytarmailS:

кто нибудь знает почему котировки уже нельзя скачать с финама?

Прошу прощения, нужно было просто обновить пакет, что то там поменялось....

тупанул.. 

 
Vladimir Perervenko:
Так есть же статья на эту тему. Пробуйте. Мне удобно все через R.
Может подбросите конкретный пример?
 
Vladimir Perervenko:

СанСаныч.

Вы не перевели часть касающуюся Windows систем. Из-за этого исключения я использовал RServer. 

RServer не доступен для версии 3.3.2
 
mytarmailS:

Прошу прощения, нужно было просто обновить пакет, что то там поменялось....

тупанул.. 

Вроде как качественные котировки отсюда
Архив котировок - GKFX
Архив котировок - GKFX
  • www.gkfx.ru
Довольно часто трейдеры сталкиваются с необходимостью получить архив котировок по тому или иному торговому инструменту за определенный исторический период. Архив котировок позволяет протестировать механические/автоматические торговые системы ("эксперты") на исторических данных и оптимизировать торговые стратегии. В данном разделе сайта Вы...
 
СанСаныч Фоменко:
Вроде как качественные котировки отсюда
мне не нужны архивные мне нужны реал тайм
Причина обращения: