Исследования в мат. пакетах

 
Есть возможность получать историю и реал-тайм фид (+ торговля) прямо из R. История: OHLC (вплоть до секундного) + тики + Level2.

Мануал. Думаю, это актуально хотя бы, как обновляемая онлайн-БД для кастомных фидов в MT5.

Но хочется освоить не только MQL, но и мат. пакеты. Например, посмотрите как быстро и удобно вычислить средний спред за крайние семь дней:
ticks<-ttFeed.TickBestHistory("EURUSD", Sys.Date()-7, Sys.Date())
mean(ticks$ask - ticks$bid)

Результат:

2.987979e-05
Всего две строчки! Не надо думать о закачке свежей тиковой истории, циклить и прочее. Все делается само!

К сожалению, практически ничего не знаю в R. Хотелось бы примеров визуализации того же прайса. Посмотреть распределение спреда и прочие простейшие действия на коленке, которые в R занимают одну/две строчки.

Про варианты тестеров (с возможностью выбора модели оптимизации (не только ГА)) в том же R и не говорю даже.

Тоже самое касается и Матлаба с Математикой. Если кто дружит, поделитесь простыми и наглядными примерами.
 
zaskok3:
Есть возможность получать историю и реал-тайм фид (+ торговля) прямо из R. История: OHLC (вплоть до секундного) + тики + Level2.

Мануал. Думаю, это актуально хотя бы, как обновляемая онлайн-БД для кастомных фидов в MT5.

Но хочется освоить не только MQL, но и мат. пакеты. Например, посмотрите как быстро и удобно вычислить средний спред за крайние семь дней:

Результат:

Всего две строчки! Не надо думать о закачке свежей тиковой истории, циклить и прочее. Все делается само!

К сожалению, практически ничего не знаю в R. Хотелось бы примеров визуализации того же прайса. Посмотреть распределение спреда и прочие простейшие действия на коленке, которые в R занимают одну/две строчки.

Про варианты тестеров (с возможностью выбора модели оптимизации (не только ГА)) в том же R и не говорю даже.

Тоже самое касается и Матлаба с Математикой. Если кто дружит, поделитесь простыми и наглядными примерами.

Я давно работаю с Матлаб, неделю назад поставил R, потихоньку изучаю. Насчет R не в курсе, в Матлаб есть удобная для меня фишка - если программу написать в виде функции, ее элементарно положить в DLL, которую потом можно вызывать обычным способом из MQL. 

Для MQL4 надо поставить 32-разрядную версию Матлаб. Кстати, в последней версии 2015b написали, что больше поддержки 32-разрядных систем не будет, это последняя версия, которая поддерживает.

 

Кстати, Microsoft тоже заинтересовалась R, в январе 2016 г. было официально объявлено о выпуске Microsoft R Open

https://habrahabr.ru/post/275113/ 

Revolution R переименован в Microsoft R и доступен бесплатно для разработчиков и студентов
Revolution R переименован в Microsoft R и доступен бесплатно для разработчиков и студентов
  • habrahabr.ru
За девять месяцев, с тех пор как Microsoft приобрела Revolution Analytics, компанией было выпущено много обновлений для Revolution R Open и Revolution R Enterprise, не говоря уже об интеграции R с SQL Server, PowerBI, Azure и Cortana Analytics. Американская компания Revolution Analytics является производителем программного обеспечения для...
 
Кто-то ищет тиковую историю, собирает ее в разных местах, мучает CopyTicks и т.д. А кто-то пишет всего две строчки.


Запись в файл тиковой истории за вчерашние сутки (аналогично делается за любой интервал):

ticks<-ttFeed.TickBestHistory("EURUSD", Sys.Date()-1, Sys.Date())
write.table(ticks, file='ticks.csv', row.names=F)
Результат в прикрепленном файле.
Файлы:
ticks.zip  713 kb
 

Бидовые бары S1-таймфрейма за крайние 300 секунд:

now <-as.POSIXct(Sys.time())  
prevNow <-as.POSIXct(now-(300))  
bars <-ttFeed.BarHistory("EUR/USD", "Bid", "S1", prevNow, now)
write.table(bars, file='bars.csv', row.names=F)
Результат в прикрепленном файле.
Файлы:
bars.zip  4 kb
 
zaskok3:
Кто-то ищет тиковую историю, собирает ее в разных местах, мучает CopyTicks и т.д. А кто-то пишет всего две строчки.


Запись в файл тиковой истории за вчерашние сутки (аналогично делается за любой интервал):

Результат в прикрепленном файле.
А откуда берется эта история?
 
Alexey Volchanskiy:
А откуда берется эта история?
С одной ECN/STP с возможностью торговли через MT4, в частности.
 
zaskok3:
Есть возможность получать историю и реал-тайм фид (+ торговля) прямо из R. История: OHLC (вплоть до секундного) + тики + Level2.

Мануал. Думаю, это актуально хотя бы, как обновляемая онлайн-БД для кастомных фидов в MT5.

Но хочется освоить не только MQL, но и мат. пакеты. Например, посмотрите как быстро и удобно вычислить средний спред за крайние семь дней:

Результат:

Всего две строчки! Не надо думать о закачке свежей тиковой истории, циклить и прочее. Все делается само!

К сожалению, практически ничего не знаю в R. Хотелось бы примеров визуализации того же прайса. Посмотреть распределение спреда и прочие простейшие действия на коленке, которые в R занимают одну/две строчки.

Про варианты тестеров (с возможностью выбора модели оптимизации (не только ГА)) в том же R и не говорю даже.

Тоже самое касается и Матлаба с Математикой. Если кто дружит, поделитесь простыми и наглядными примерами.
Завтра выложу пару полезных кодов на эту тему.
 
Alexey Burnakov:
Завтра выложу пару полезных кодов на эту тему.

Кстати, если есть люди, разбирающиеся в R, вопрос начинающего. Я вижу, что есть несколько дистрибутивов R, R-server, какой-то "A web application framework for R" http://shiny.rstudio.com/ , монструозные пакеты от Microsoft... Что выбрать-то?

 

 

A web application framework for R
 .
 
Alexey Volchanskiy:

Кстати, если есть люди, разбирающиеся в R, вопрос начинающего. Я вижу, что есть несколько дистрибутивов R, R-server, какой-то "A web application framework for R" http://shiny.rstudio.com/ , монструозные пакеты от Microsoft... Что выбрать-то?

 

 

A web application framework for R
 .

Здравствуйте. Сначала установите R: https://cran.r-project.org/bin/windows/base/

Опционально можно установить R Studio: https://www.rstudio.com/products/rstudio/download/

 В студии работать намного удобней. 

 
Alexey Burnakov:
Завтра выложу пару полезных кодов на эту тему.

 Базовые графики: 

# time series

plot(lateral_residuals$`lateral_linear_model$residuals`, type = 'l')

# histogram

hist(lateral_residuals$`lateral_linear_model$residuals`)

#scatterplot

plot(x$V1, x$V2)

 

#two or more semitransparent histograms of distribution

a=rnorm(1000, 3, 1)
b=rnorm(1000, 6, 1)
hist(a, xlim=c(0,10), col="red")
hist(b, add=T, col=rgb(0, 1, 0, 0.5) )
# histogram with density

library(ggplot2)
ggplot(combined_residuals, aes(x = combined_residuals$'value', fill = combined_residuals$'group')) +
        geom_histogram(alpha = .5, binwidth = 0.05) +
        geom_density(alpha = .3, col = 'blue') + xlim(-3, 3)

 

# boxplots

library(ggplot2)

ggplot(a_sample, aes(x = x$V1))+ 
        geom_boxplot()

 ggplot examples: http://www.mitchr.me/SS/exampleR/rcode/ggplot.html