- Сообщений: 114
TradingView - платформа для просмотра и анализа биржевых котировок. Преимуществом данной платформы является то, что разработчиками был создан свой собственный язык программирования Pine, который позволяет создавать свои собственные индикаторы и сигналы.
Awesome Oscillator
- roman
- Автор темы
- Не в сети
- Модератор
-
Less
Больше
6 мес. 3 нед. назад #36
от roman
roman создал тему: Awesome Oscillator
Рассмотрим алгоритм создания технического индикатора Awesome Oscillator (AO) с помощью языка Pine в торговой платформе TradingView.
Awesome Oscillator (AO) - определяется как разница между двумя простыми скользящими средними (SMA) с периодами 5 (быстрой) и 34 (медленной).
Таким образом, код будет выглядеть следующим образом:
//Код представлен для TradingView. Версия PineCode v4.
//@version=4
study(title="Awesome Oscillator")
fastMA = sma((high+low)/2, 5)
slowMA = sma((high+low)/2, 34)
macd = fastMA - slowMA
signal = ema(macd, 10)
plot(macd,transp=0,title="macd", style=plot.style_histogram, color=(macd>=macd[1]? #26A69A : #EF5350))
plot(signal,transp=0,title="signal")
В используемом коде применяются следующие функции:
sma(source, length) - Функция 'sma', которая возвращает простое скользящее среднее для переменной source за интервал length (количество баров);
ema(source, length) - Функция 'sma', которая возвращает экспоненциальное взвешенное скользящее среднее для переменной source за интервал length (количество баров);
plot(series, title, style, color, linewidth) - Функция, которая отображает данные на графике.
- series (series) Массив данных, который нужно графически отобразить.
- title (const string) Заголовок plot.
- style (integer) Тип графика: line, stepline, histogram, cross, area, columns, circles (Значение по умолчанию line).
- color (color) Цвет plot. Вы можете использовать такие константы, как 'color=red' или 'color=#ff001a', а также сложные выражения, например, 'color = close >= open ? green : red'. Дополнительный аргумент.
- linewidth (integer) Ширина отображаемой линии, значения от 1до 4. Значение по умолчанию 1. Нельзя применить ко всем стилям.
Результат в торговой платформе TradingView.
Awesome Oscillator (AO) - определяется как разница между двумя простыми скользящими средними (SMA) с периодами 5 (быстрой) и 34 (медленной).
Таким образом, код будет выглядеть следующим образом:
//Код представлен для TradingView. Версия PineCode v4.
//@version=4
study(title="Awesome Oscillator")
fastMA = sma((high+low)/2, 5)
slowMA = sma((high+low)/2, 34)
macd = fastMA - slowMA
signal = ema(macd, 10)
plot(macd,transp=0,title="macd", style=plot.style_histogram, color=(macd>=macd[1]? #26A69A : #EF5350))
plot(signal,transp=0,title="signal")
В используемом коде применяются следующие функции:
sma(source, length) - Функция 'sma', которая возвращает простое скользящее среднее для переменной source за интервал length (количество баров);
ema(source, length) - Функция 'sma', которая возвращает экспоненциальное взвешенное скользящее среднее для переменной source за интервал length (количество баров);
plot(series, title, style, color, linewidth) - Функция, которая отображает данные на графике.
- series (series) Массив данных, который нужно графически отобразить.
- title (const string) Заголовок plot.
- style (integer) Тип графика: line, stepline, histogram, cross, area, columns, circles (Значение по умолчанию line).
- color (color) Цвет plot. Вы можете использовать такие константы, как 'color=red' или 'color=#ff001a', а также сложные выражения, например, 'color = close >= open ? green : red'. Дополнительный аргумент.
- linewidth (integer) Ширина отображаемой линии, значения от 1до 4. Значение по умолчанию 1. Нельзя применить ко всем стилям.
Результат в торговой платформе TradingView.
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
- roman
- Автор темы
- Не в сети
- Модератор
-
Less
Больше
- Сообщений: 114
6 мес. 3 нед. назад #37
от roman
roman ответил в теме Awesome Oscillator
Также индикатор Awesome Oscillator (AO) можно переписать в виде функции//Код представлен для TradingView. Версия PineCode v4.
//@version=4
function_AO(ao_src, length_fastMA,length_slowMA,length_signal) =>
fastMA = sma(ao_src, length_fastMA)
slowMA = sma(ao_src, length_slowMA)//34
macd = fastMA - slowMA
signal = ema(macd, length_signal)
[macd,signal]
Входными величинами являются следующие переменные:
ao_src - массив цен
length_fastMA - период усреднения для быстрой скользящей средней
length_slowMA - период усреднения для медленной скользящей средней
length_signal - период усреднения для сигнальной линии
Выходными величинами являются следующие переменные:
macd - массив значений с разницей между двумя простыми скользящими средними (SMA) с периодами 5 (быстрой) и 34 (медленной)
signal - массив значений сигнальной линии
Обращение к функции выполняется следующим образом:[macd,signal]=function_AO((high+low)/2,5,40,5)
plot(macd,transp=0,title="macd", style=plot.style_histogram, color=(macd>=macd[1]? #26A69A : #EF5350))
plot(signal,transp=0,title="signal")
//@version=4
function_AO(ao_src, length_fastMA,length_slowMA,length_signal) =>
fastMA = sma(ao_src, length_fastMA)
slowMA = sma(ao_src, length_slowMA)//34
macd = fastMA - slowMA
signal = ema(macd, length_signal)
[macd,signal]
Входными величинами являются следующие переменные:
ao_src - массив цен
length_fastMA - период усреднения для быстрой скользящей средней
length_slowMA - период усреднения для медленной скользящей средней
length_signal - период усреднения для сигнальной линии
Выходными величинами являются следующие переменные:
macd - массив значений с разницей между двумя простыми скользящими средними (SMA) с периодами 5 (быстрой) и 34 (медленной)
signal - массив значений сигнальной линии
Обращение к функции выполняется следующим образом:[macd,signal]=function_AO((high+low)/2,5,40,5)
plot(macd,transp=0,title="macd", style=plot.style_histogram, color=(macd>=macd[1]? #26A69A : #EF5350))
plot(signal,transp=0,title="signal")
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.