Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В ggplot2(v2.2.1) исчезло определение geom_candlestick (MRO 3.4.1).
Я уже снес MRO 3.4.0 в котором делал все вычисления поэтому завтра найду решение и напишу.
У вас какая версия R ?
Спасибо!
Версия последняя "R version 3.4.2 (2017-09-28)"
Поэтому не люблю этот ggplot2. Вот работающий вариант который я не включил в статью.
#--------quantmod---------------------------- require(quantmod) require(timetk) evalq( pr %>% tk_xts(.) %>% chartSeries(x = OHLC(.), #c("auto", "candlesticks", #"matchsticks", "bars","line") type = "bars", subset = 'last 3 days',#weeks, months show.grid = T, name = "EURJPY M15", tyme.scale = T, log.scale = FALSE, line.type = "l", bar.type = "ohlc", theme = chartTheme('white', up.col = 4, dn.col = 2, grid.col = 3, main.col = 1, sub.col = 4), major.ticks = "day", minor.ticks = TRUE , plot = TRUE, color.vol = F, multi.col = F ), env)Так выглядит
Удачи
Поэтому не люблю этот ggplot2. Вот работающий вариант который я не включил в статью.
Так выглядит
Удачи
Спасибо!
В RStudio Ваш вариант нормально график строит, а из терминала МТ4 ни в какую. Второй день вожусь и не выходит через окружение env команда chartSeries.
Если возможно, поделитесь советником под MT4 выгружающим котировки и строящим график. Спасибо.
Смог только по старинке, как делал раньше. Ну очень не удобно все команды прописывать в терминале, а не в R.
Rv(R,"Data",tm);
Rv(R,"Time",tm);
Rv(R,"Open",o);
Rv(R,"High",hi);
Rv(R,"Low",lo);
Rv(R,"Close",clo);
Rv(R,"Volume",vol);
PREDICTION_COMMAND=
"library(magrittr)"+CR
+"library(dplyr)"+CR
+"library(xts)"+CR
+"library(quantmod)"+CR
+"price <- cbind(Time = rev(Time), Open = rev(Open), High = rev(High), Low = rev(Low), Close = rev(Close))"+CR
+"price_t <- price"+CR
+"dts = price_t[,1]"+CR
+"mydates = structure(price_t[,1],class=c('POSIXt','POSIXct'))"+CR
+"price_time <- xts(x=price_t[,c(2:5)], order.by=mydates, tzone='GMT')"+CR
;
RExecuteAsync(R,PREDICTION_COMMAND);
Rx(R,"chartSeries(price_time, type = 'bars', subset = 'last 3 days',show.grid = T,name = 'EURUSD M15',tyme.scale = T,log.scale = FALSE,line.type = 'l',bar.type = 'ohlc',theme = chartTheme('white',up.col = 4, dn.col = 2,grid.col = 3,main.col = 1,sub.col = 4), major.ticks = 'day', minor.ticks = TRUE ,plot = TRUE,color.vol = F,multi.col = F)");
Спасибо!
В RStudio Ваш вариант нормально график строит, а из терминала МТ4 ни в какую. Второй день вожусь и не выходит через окружение env команда chartSeries.
Если возможно, поделитесь советником под MT4 выгружающим котировки и строящим график. Спасибо.
Смог только по старинке, как делал раньше. Ну очень не удобно все команды прописывать в терминале, а не в R.
Rv(R,"Data",tm);
Rv(R,"Time",tm);
Rv(R,"Open",o);
Rv(R,"High",hi);
Rv(R,"Low",lo);
Rv(R,"Close",clo);
Rv(R,"Volume",vol);
PREDICTION_COMMAND=
"library(magrittr)"+CR
+"library(dplyr)"+CR
+"library(xts)"+CR
+"library(quantmod)"+CR
+"price <- cbind(Time = rev(Time), Open = rev(Open), High = rev(High), Low = rev(Low), Close = rev(Close))"+CR
+"price_t <- price"+CR
+"dts = price_t[,1]"+CR
+"mydates = structure(price_t[,1],class=c('POSIXt','POSIXct'))"+CR
+"price_time <- xts(x=price_t[,c(2:5)], order.by=mydates, tzone='GMT')"+CR
;
RExecuteAsync(R,PREDICTION_COMMAND);
Rx(R,"chartSeries(price_time, type = 'bars', subset = 'last 3 days',show.grid = T,name = 'EURUSD M15',tyme.scale = T,log.scale = FALSE,line.type = 'l',bar.type = 'ohlc',theme = chartTheme('white',up.col = 4, dn.col = 2,grid.col = 3,main.col = 1,sub.col = 4), major.ticks = 'day', minor.ticks = TRUE ,plot = TRUE,color.vol = F,multi.col = F)");
Добрый день.
Я не строю графики таким образом из МТ. Это громоздко и не удобно. Интерактивные и любые другие графики нужно строить из R через shiny.
В V части статьи я приложу советник с выводом простого графика. Правда я не пойму зачем Вам график котировок?
Я предполагал выводить график результатов тестирования, результатов торговли в реальном времени и с разбивкой по времени, символу и т.д. Может не все сделаю в этом эксперте.
Для работы с время/дата посмотрите более удобный пакет timekt. На Ваш выбор.
Удачи
Здравствуйте Владимир,
1) почему
умножается на 10, а остальные нет?
При нормализации эффект умножения - исчезнет.
2) Цифровые фильтры у вас считаются по ценам Close. На начало бара цена Close неизвестна (и равна Open). А считая по Close - получается подглядывание в будущее, которое немного повышает точность.
Может нужно считать фильтры по Close предыдущего бара или хотя бы по Open текущего бара?
Для эксперимента попробовал посчитать фильтры по Open - результаты стали похуже на несколько процентов.
По эксперименту из 6-й статьи
> #---5-----best----------------------
[1] 0.677 0.674 0.673 0.672 0.669 0.669 0.668
вместо полученных вами по Close [1] 0.720 0.718 0.718 0.715 0.713 0.713 0.712
3) Почему фильтры FATL, SATL, RFTL, RSTL исключены из дальнейших расчетов? Расчет ведется только на осцилляторах. Я попробовал их оставить, clusterSim посчитал их важными и не отсеял, в результате обучения получилась ошибка около 50%, т.е. они хоть и важны,но значительно ухудшают результат.Видимо имеет смысл использовать для нейросетей только осцилляторы в качестве входов?
Здравствуйте Владимир,
1) почему
умножается на 10, а остальные нет?
При нормализации эффект умножения - исчезнет.
2) Цифровые фильтры у вас считаются по ценам Close. На начало бара цена Close неизвестна (и равна Open). А считая по Close - получается подглядывание в будущее, которое немного повышает точность.
Может нужно считать фильтры по Close предыдущего бара или хотя бы по Open текущего бара?
Для эксперимента попробовал посчитать фильтры по Open - результаты стали похуже на несколько процентов.
По эксперименту из 6-й статьи
> #---5-----best----------------------
[1] 0.677 0.674 0.673 0.672 0.669 0.669 0.668
вместо полученных вами по Close [1] 0.720 0.718 0.718 0.715 0.713 0.713 0.712
3) Почему фильтры FATL, SATL, RFTL, RSTL исключены из дальнейших расчетов? Расчет ведется только на осцилляторах. Я попробовал их оставить, clusterSim посчитал их важными и не отсеял, в результате обучения получилась ошибка около 50%, т.е. они хоть и важны,но значительно ухудшают результат.Видимо имеет смысл использовать для нейросетей только осцилляторы в качестве входов?
Добрый день.
1. Этот предиктор имел очень малые значения и при нормализации мог выпасть. Я его просто подогнал в диапазон остальных предикторов. При применении метода SpatialSign предикторы не должны отличаться на порядки.
2. Все значения котировок берутся со сформировавшихся баров начиная с 1. Вообще зигзаг лучше считать по High/Low. В последних статьях я предусмотрел варианты расчета ZZ.
3. Эти 4 являются непрерывными линиями и неприменимы как входы. Применяется первая разность по ним
v.fatl = c(NA, diff(fatl)), v.rftl = c(NA, diff(rftl)), v.satl = c(NA, diff(satl)), v.rstl = c(NA, diff(rstl)*10))Цифровые фильтры имеют одно важное преимущество перед другими индикаторами - они непараметрические(условно говоря конечно). Но мне они очень нравятся.
Удачи
Здравствуйте, следуя вашей статье (первый раз касаюсь R), прямо во втором кирпиче кода столкнулся с ошибкой folllwing :
Error in evalq({ : object 'env' not found
Означает ли env здесь что-то, названное в программном обеспечении ПК? Или это действительно объект, который был создан автоматически?
Потрясающая статья, собираюсь найти способ превзойти ее, было бы здорово, если бы вы могли помочь :)
(Использую RStudio и установил MRO 3.5.3 (потому что 3.4.0 был устаревшим))
Здравствуйте, следуя вашей статье (впервые прикоснувшись к R), прямо во втором блоке кода я столкнулся со следующей ошибкой:
Error in evalq ({: object 'env' not found
Здесь env означает что-то названное в программах для ПК? Или это действительно автоматически генерируемый объект?
Отличная статья, я найду способ победить это, было бы здорово, если бы вы могли помочь :)
(Использую RStudio и устанавливаю MRO 3.5.3 (так как 3.4.0 устарела))
Объект env был создан для разделения данных от различных инструментов. Просто в начале скрипта напишите
Удачи.
Уважаемый MR. Владимир Перервенко, большое спасибо за ваш быстрый ответ, после прохождения курса R я надеюсь сделать по крайней мере достаточно, чтобы заслужить изучение вашей потрясающей работы, большое спасибо за то, что поделились, г-н Владимир.
С наилучшими пожеланиями
Ferox
Здравствуйте еще раз, господин Перервенко, надеюсь, вы чувствуете себя хорошо. У меня новый вопрос, когда вы впервые написали о ZigZag :
в 9-й строке, что означает объект Dig?
Не смог найти его ни в проекте, ни в необходимых пакетах...
Best Regards MR. Perervenko
Ferox