楠木軒

【Pyhon金融分析】:第19篇 技術分析:移動平均線

由 欽慶敏 釋出於 財經

有了資料後,開始做技術分析。從每日的資料中,可以做出簡單的技術分析:移動平均線(Moving Average,MA)

,簡稱均線。

可以藉由均線當作參考,簡單的判斷出場點與進場點。

為何使用移動平均線

價格,是買賣雙方所同意的金額。因此當價格出來,以買方來說,這就是他的持有股票的成本,當我們把前幾日的價格平均下來,畫成一個線,就可以簡單得到購買的成本。

根據這購買成本,就知道大家的平均成本是多少,我們能用低成本進去,那些高成本的人有機會幫我們拉抬價格,又或者我們接到便宜的價格。

我有時候會看平均線去決定進出場的點。像是120日均線就是近120天的收盤價平均,當價格低於120日均線,表示目前的價格在近120天中是偏低,有可能價值被低估,我們可以進場。同樣的價格往上漲時,如果20日均線價格高於5日均線,表示漲勢有疲態,可能會持續往下跑,這時可以考慮出場。

這就是簡單的均線運用,當然還要搭配其他資料進行判斷。

均線的介紹可以參考:[用技術分析看BTC和ETH走勢] Day5:移動平均線Moving Average

如何製作均線?

建立jupyter notebook

製作一個.ipynb,然後把我們所需要的套件放入,當然就是有跟Azure SQL server連線的pyodbc和pandas,以及繪圖的matplotlib:

讀檔案

製作圖表

先把我們的圖片印出來看看:

df.plot()

我們直接使用rolling(),這個可以是一個「滾動」的值,也就是變動的值,再加上mean(),就可以製作「移動的平均值」。然後我們在rolling()裡面放上要的均值長度,就可以得到X日均線。

就可以看到平滑的線圖:

後記

發現線圖一直很奇怪,不是一條圓滑的線,而是如同長條圖那種。

研究很久才發現,原來那是因為我的資料沒有排序,雖然畫出來的她會自動排序,但是使用rolling似乎就直接用資料去做,如果沒有排序就不會有好的圖表!

他會醜成這樣:

#python實戰#