talib底層用C編寫,計(jì)算速度非城昝蹋快局待,底層有優(yōu)化。
調(diào)用路徑:【julia】->《PyCall》->【python】->《Cython/Cpython》->【Ta-lib】
提示:
LLV(C,N) 與 MIN(C,N),HHV(C,N)與MAX(C,N)的區(qū)別:
MIN:前面的個(gè)數(shù)不足N時(shí)凰慈,返回空值汞幢。依據(jù)通達(dá)信函數(shù)庫(kù)。
LLV:前面的個(gè)數(shù)不足N時(shí)微谓,前面有幾個(gè)取幾個(gè)值進(jìn)行判斷
HHV,MAX同理森篷。
一、ta-lib的官網(wǎng)
二堰酿、包簡(jiǎn)介
TaLib是一個(gè)Python金融指數(shù)處理庫(kù)疾宏。包含了很多技術(shù)分析里的常用參數(shù)指標(biāo),例如MA触创、SMA坎藐、WMA、MACD哼绑、ATR等岩馍。
三、包的安裝
先得有python環(huán)境
python版的ta-lib安裝(略)
四抖韩、julia調(diào)用ta-lib包
# 調(diào)取ta-lib
using PyCall
ta = pyimport("talib")
println("okk!!!")
五蛀恩、使用ta-lib函數(shù)
5.1獲取所有的函數(shù)
#獲取所有的函數(shù)
fns = ta.get_functions()
fns .|> println
結(jié)果
HT_DCPERIOD
HT_DCPHASE
HT_PHASOR
HT_SINE
HT_TRENDMODE
ADD
DIV
MAX
MAXINDEX
MIN
MININDEX
MINMAX
MINMAXINDEX
MULT
SUB
SUM
ACOS
ASIN
ATAN
CEIL
COS
COSH
EXP
FLOOR
LN
LOG10
SIN
SINH
SQRT
TAN
TANH
ADX
ADXR
APO
AROON
AROONOSC
BOP
CCI
CMO
DX
MACD
MACDEXT
MACDFIX
MFI
MINUS_DI
MINUS_DM
MOM
PLUS_DI
PLUS_DM
PPO
ROC
ROCP
ROCR
ROCR100
RSI
STOCH
STOCHF
STOCHRSI
TRIX
ULTOSC
WILLR
BBANDS
DEMA
EMA
HT_TRENDLINE
KAMA
MA
MAMA
MAVP
MIDPOINT
MIDPRICE
SAR
SAREXT
SMA
T3
TEMA
TRIMA
WMA
CDL2CROWS
CDL3BLACKCROWS
CDL3INSIDE
CDL3LINESTRIKE
CDL3OUTSIDE
CDL3STARSINSOUTH
CDL3WHITESOLDIERS
CDLABANDONEDBABY
CDLADVANCEBLOCK
CDLBELTHOLD
CDLBREAKAWAY
CDLCLOSINGMARUBOZU
CDLCONCEALBABYSWALL
CDLCOUNTERATTACK
CDLDARKCLOUDCOVER
CDLDOJI
CDLDOJISTAR
CDLDRAGONFLYDOJI
CDLENGULFING
CDLEVENINGDOJISTAR
CDLEVENINGSTAR
CDLGAPSIDESIDEWHITE
CDLGRAVESTONEDOJI
CDLHAMMER
CDLHANGINGMAN
CDLHARAMI
CDLHARAMICROSS
CDLHIGHWAVE
CDLHIKKAKE
CDLHIKKAKEMOD
CDLHOMINGPIGEON
CDLIDENTICAL3CROWS
CDLINNECK
CDLINVERTEDHAMMER
CDLKICKING
CDLKICKINGBYLENGTH
CDLLADDERBOTTOM
CDLLONGLEGGEDDOJI
CDLLONGLINE
CDLMARUBOZU
CDLMATCHINGLOW
CDLMATHOLD
CDLMORNINGDOJISTAR
CDLMORNINGSTAR
CDLONNECK
CDLPIERCING
CDLRICKSHAWMAN
CDLRISEFALL3METHODS
CDLSEPARATINGLINES
CDLSHOOTINGSTAR
CDLSHORTLINE
CDLSPINNINGTOP
CDLSTALLEDPATTERN
CDLSTICKSANDWICH
CDLTAKURI
CDLTASUKIGAP
CDLTHRUSTING
CDLTRISTAR
CDLUNIQUE3RIVER
CDLUPSIDEGAP2CROWS
CDLXSIDEGAP3METHODS
AVGPRICE
MEDPRICE
TYPPRICE
WCLPRICE
BETA
CORREL
LINEARREG
LINEARREG_ANGLE
LINEARREG_INTERCEPT
LINEARREG_SLOPE
STDDEV
TSF
VAR
ATR
NATR
TRANGE
AD
ADOSC
OBV
5.2 獲取按功能分類后的函數(shù)列表
#按功能種類獲取函數(shù)
dt = ta.get_function_groups()
for (k,v) in dt
println("====$(k)====")
v .|> println
end
結(jié)果
====Price Transform====
AVGPRICE
MEDPRICE
TYPPRICE
WCLPRICE
====Momentum Indicators====
ADX
ADXR
APO
AROON
AROONOSC
BOP
CCI
CMO
DX
MACD
MACDEXT
MACDFIX
MFI
MINUS_DI
MINUS_DM
MOM
PLUS_DI
PLUS_DM
PPO
ROC
ROCP
ROCR
ROCR100
RSI
STOCH
STOCHF
STOCHRSI
TRIX
ULTOSC
WILLR
====Statistic Functions====
BETA
CORREL
LINEARREG
LINEARREG_ANGLE
LINEARREG_INTERCEPT
LINEARREG_SLOPE
STDDEV
TSF
VAR
====Overlap Studies====
BBANDS
DEMA
EMA
HT_TRENDLINE
KAMA
MA
MAMA
MAVP
MIDPOINT
MIDPRICE
SAR
SAREXT
SMA
T3
TEMA
TRIMA
WMA
====Volatility Indicators====
ATR
NATR
TRANGE
====Cycle Indicators====
HT_DCPERIOD
HT_DCPHASE
HT_PHASOR
HT_SINE
HT_TRENDMODE
====Math Transform====
ACOS
ASIN
ATAN
CEIL
COS
COSH
EXP
FLOOR
LN
LOG10
SIN
SINH
SQRT
TAN
TANH
====Pattern Recognition====
CDL2CROWS
CDL3BLACKCROWS
CDL3INSIDE
CDL3LINESTRIKE
CDL3OUTSIDE
CDL3STARSINSOUTH
CDL3WHITESOLDIERS
CDLABANDONEDBABY
CDLADVANCEBLOCK
CDLBELTHOLD
CDLBREAKAWAY
CDLCLOSINGMARUBOZU
CDLCONCEALBABYSWALL
CDLCOUNTERATTACK
CDLDARKCLOUDCOVER
CDLDOJI
CDLDOJISTAR
CDLDRAGONFLYDOJI
CDLENGULFING
CDLEVENINGDOJISTAR
CDLEVENINGSTAR
CDLGAPSIDESIDEWHITE
CDLGRAVESTONEDOJI
CDLHAMMER
CDLHANGINGMAN
CDLHARAMI
CDLHARAMICROSS
CDLHIGHWAVE
CDLHIKKAKE
CDLHIKKAKEMOD
CDLHOMINGPIGEON
CDLIDENTICAL3CROWS
CDLINNECK
CDLINVERTEDHAMMER
CDLKICKING
CDLKICKINGBYLENGTH
CDLLADDERBOTTOM
CDLLONGLEGGEDDOJI
CDLLONGLINE
CDLMARUBOZU
CDLMATCHINGLOW
CDLMATHOLD
CDLMORNINGDOJISTAR
CDLMORNINGSTAR
CDLONNECK
CDLPIERCING
CDLRICKSHAWMAN
CDLRISEFALL3METHODS
CDLSEPARATINGLINES
CDLSHOOTINGSTAR
CDLSHORTLINE
CDLSPINNINGTOP
CDLSTALLEDPATTERN
CDLSTICKSANDWICH
CDLTAKURI
CDLTASUKIGAP
CDLTHRUSTING
CDLTRISTAR
CDLUNIQUE3RIVER
CDLUPSIDEGAP2CROWS
CDLXSIDEGAP3METHODS
====Volume Indicators====
AD
ADOSC
OBV
====Math Operators====
ADD
DIV
MAX
MAXINDEX
MIN
MININDEX
MINMAX
MINMAXINDEX
MULT
SUB
SUM
5.3 查看函數(shù)的用法
? ta.MA
結(jié)果
MA(real[, timeperiod=?, matype=?])
Moving average (Overlap Studies)
Inputs:
real: (any ndarray)
Parameters:
timeperiod: 30
matype: 0 (Simple Moving Average)
Outputs:
real
5.4 計(jì)算5日均線
using DataFrames
df = DataFrame()
df.price = [float(x) for x in 1:100]
df.ma5 = ta.MA(df.price,5)
df |> display
結(jié)果
100 rows × 2 columns
price ma5
Float64 Float64
1 1.0 NaN
2 2.0 NaN
3 3.0 NaN
4 4.0 NaN
5 5.0 3.0
6 6.0 4.0
7 7.0 5.0
8 8.0 6.0
9 9.0 7.0
10 10.0 8.0
11 11.0 9.0
12 12.0 10.0
13 13.0 11.0
14 14.0 12.0
15 15.0 13.0
16 16.0 14.0
17 17.0 15.0
18 18.0 16.0
19 19.0 17.0
20 20.0 18.0
21 21.0 19.0
22 22.0 20.0
23 23.0 21.0
24 24.0 22.0
25 25.0 23.0
26 26.0 24.0
27 27.0 25.0
28 28.0 26.0
29 29.0 27.0
30 30.0 28.0
? ? ?