Обсуждение статьи "Третье поколение нейросетей: "Глубокие нейросети"" - страница 12
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Vladimir Perervenko
Добавьте в статью дополнительную информацию по работе с R Studio
Добрый день.
По поводу файла hosts не понял. Можно более подробно ?
Удачи
Vladimir Perervenko
Добавьте в статью дополнительную информацию по работе с R Studio
Я использую другую форму записи для проверки инсталлированных пакетов:
А загружать библиотеки нужно в описании функций которые их применяют. Хотя можно и так при инициализации эксперта.
Так зачем Вам все же запуск эксперта в тестере??
Удачи
В ходе долгой отладки скриптов R, выявил баг, который сложно отловить, если поступающие данные имеют NA. Просто не будет срабатывать сигнал. В файл "e_SAE_init.r" рекомендуется добавить сроку очиcтки NA в функцию Test(dt,x) перед new.data <- predict(prepr, tail(x, 50)): x <- na.omit(x);
Это похоже на "костыль", но ничего лучше пока не придумал.
Без этого будет происходить скрытая ошибка:
Error in if (sqrt(denom) > .Machine$double.eps) x/sqrt(denom) else x * : missing value where TRUE/FALSE needed
В ходе долгой отладки скриптов R, выявил баг, который сложно отловить, если поступающие данные имеют NA. Просто не будет срабатывать сигнал. В файл "e_SAE_init.r" рекомендуется добавить сроку очиcтки NA в функцию Test(dt,x) перед new.data <- predict(prepr, tail(x, 50)): x <- na.omit(x);
Это похоже на "костыль", но ничего лучше пока не придумал.
Без этого будет происходить скрытая ошибка:
Error in if (sqrt(denom) > .Machine$double.eps) x/sqrt(denom) else x * : missing value where TRUE/FALSE needed
В ходе долгой отладки скриптов R, выявил баг, который сложно отловить, если поступающие данные имеют NA. Просто не будет срабатывать сигнал. В файл "e_SAE_init.r" рекомендуется добавить сроку очиcтки NA в функцию Test(dt,x) перед new.data <- predict(prepr, tail(x, 50)): x <- na.omit(x);
Это похоже на "костыль", но ничего лучше пока не придумал.
Без этого будет происходить скрытая ошибка:
Error in if (sqrt(denom) > .Machine$double.eps) x/sqrt(denom) else x * : missing value where TRUE/FALSE needed
Это утверждение неверно.
В функции Test(dt, x) - x это входные данные вычисляемые функцией In(). Посмотрим ее в скрипте "i_SAE_fun.r"
In <- function(p = 16){ require(TTR) adx <- ADX(price, n = p) ar <- aroon(price[ ,c('High', 'Low')], n = p)[ ,'oscillator'] cci <- CCI(price[ ,2:4], n = p) chv <- chaikinVolatility(price[ ,2:4], n = p) cmo <- CMO(price[ ,'Med'], n = p) macd <- MACD(price[ ,'Med'], 12, 26, 9)[ ,'macd'] osma <- macd - MACD(price[ ,'Med'],12, 26, 9)[ ,'signal'] rsi <- RSI(price[ ,'Med'], n = p) stoh <- stoch(price[ ,2:4], 14, 3, 3) smi <- SMI(price[ ,2:4],n = p, nFast = 2, nSlow = 25, nSig = 9) vol <- volatility(price[ ,1:4], n = p, calc="yang.zhang", N=96) In <- cbind(adx, ar, cci, chv, cmo, macd, osma, rsi, stoh, smi, vol) return(In) }Это целый ряд индикаторов. Вычислим их на истории price[] длиной 2000 баров.
Мы отрезаем неопределенные данные. Условие : nrow(x) > 500 + max(NA). Т.е. как минимум в нашем случае 533. Для надежности заложите nrow(x) = 600-700.
Не вижу как Вы получили в x неопределенную NA.
Удачи
Привет, Владимир,
Вот из Бразилии!!!
Я прочитал ваши инструкции о нейронной сети с помощью R, но у меня есть глупый вопрос (извините, я новичок в этом!).
В учебнике, который вы написали ( https://www.mql5.com/ru/articles/1103#ch_3), вразделе "Раздел 3.3.1 - Исходные данные" вы описали функцию, называемую pr.OHLC, которую я очень хорошо понял.
Но вы показываете некоторые результаты, из которых мне не ясно, какие параметры необходимы для получения следующих результатов
> head(price) Open High Low Close Med CO [1,] 1.33848 1.33851 1.33824 1.33844 1.338375 -4e-05 [2,] 1.33843 1.33868 1.33842 1.33851 1.338550 8e-05 [3,] 1.33849 1.33862 1.33846 1.33859 1.338540 1e-04 [4,] 1.33858 1.33861 1.33856 1.33859 1.338585 1e-05 [5,] 1.33862 1.33868 1.33855 1.33855 1.338615 -7e-05Не могли бы вы, пожалуйста, помочь мне с этим?
Лучше всего,
Фабио
Привет, Владимир,
Вот из Бразилии!!!
Я прочитал ваши инструкции о нейронной сети с помощью R, но у меня есть глупый вопрос (извините, я новичок в этом!).
В учебнике, который вы написали ( https://www.mql5.com/ru/articles/1103#ch_3), вразделе "Раздел 3.3.1 - Исходные данные" вы описали функцию, называемую pr.OHLC, которую я очень хорошо понял.
Но вы показываете некоторые результаты, из которых мне не ясно, какие параметры необходимы для получения следующих результатов
Не могли бы вы, пожалуйста, помочь мне с этим?
Лучше всего,
Фабио
Привет, Фабио,
Что неясно?
pr.OHLC <- function (o, h, l, c) { #Unite quote vectors into a matrix having previously expanded them #Indexing of time series of vectors in R starts with 1. #Direction of indexing is from old to new ones. price <- cbind(Open = rev(o), High = rev(h), Low = rev(l), Close = rev(c)) Med <- (price[, 2] + price[, 3])/2 #We calculate average price (HIgh + Low)/2 CO <- price[, 4] - price[, 1] # We calculate body candles (Close - Open) #add Med and CO to the matrix price <- cbind(price, Med, CO)#We are putting it all in a matrix }Здравствуйте, Владимир,
Есть ли возможность получить файлы для MT5?
С уважением,
Фабио Лима
Здравствуйте, Владимир,
Есть ли возможность получить файлы для MT5?
С уважением,
Фабио Лима
Привет, Фабио,
Прошу прощения.
Я не пишу по MKL5.
С наилучшими пожеланиями
Владимир
Один вопрос. Я не совсем понимаю порядок вектора цен.
Вы делаете разворот здесь : price <- cbind(Open = rev(o), High = rev(h), Low = rev(l), Close = rev(c))
Каков исходный порядок o,h,l,c?
Один вопрос. Я не совсем понимаю порядок вектора цен.
Вы делаете разворот здесь : price <- cbind(Open = rev(o), High = rev(h), Low = rev(l), Close = rev(c))
Каков первоначальный порядок o,h,l,c?
Здравствуйте,
В МТ4 нумерация баров ведется от самого последнего к самому старому. В R наоборот, от старого к новому, новый бар последний.