Technical Analysis ด้วย Ta-libs Python

Wongsakorn Sanwises
3 min readJun 19, 2020

--

วิธีติดตั้ง Ta-libs

Ta-libs package ที่เก็บสูตร Technical Analysis ไว้ให้เราแล้ว (แต่คำนวณกันเองก็ได้)

https://github.com/mrjbq7/ta-lib
  1. ไปที่เว็บไซต์ : https://www.lfd.uci.edu/~gohlke/pythonlibs/
  2. หา library Ta-lib ที่ versions ตรงกับ python ของเรา

3. ดาวน์โหลดไฟล์มาแล้วให้ทำการติดตั้งไฟล์

cd Downloads (หรือตำแหน่งไฟล์ที่ดาวน์โหลดมา)
pip install TA_Lib-0.4.18-cp37-cp37m-win_amd64.whl (ชื่อไฟล์)

4. เมื่อติดตั้งเสร็จแล้ว จะได้ข้อกลับมาว่าตามรูป และเช็คด้วยคำสั่ง pip list

https://mrjbq7.github.io/ta-lib/func_groups/volatility_indicators.html

มาลองสร้างสัญญาณเทรดกัน ผมใช้ library ccxt เชื่อมต่อโบรค crypto exchange นะครับใครยังไม่ได้รู้ว่าทำยังย้อนกลับไปอ่านได้ครับ

import json
import ccxt
import talib as ta
import pandas as pd
import matplotlib.pyplot as plt

ทีนี้เรามาดึง open, high, low, close Historical Data จากโบรคกัน หรือจาก csv ก็ได้ที่นี้เอามาจากโบรคเลย

r = ftx.fetch_ohlcv('BTC/USD','4h',None,20)# TF 4H ย้อนหลัง 20 ชุด
print(type(r)) เช็คประเภทข้อมูล
ftx.fetch_ohlcv()

ทางโบรค FTX ส่งกลับมาเป็น list นะครับ เราจะเรียบเรียงเก็บเป็นตารางด้วย pandas และให้หัว colunm ให้ data หน่อย

df = pd.DataFrame(r,columns =['date', 'open', 'high', 'low', 'close', 'volume'])
df

จะเป็นว่าตรง colunm date นี้เป็น timestamps อยู่ดูแล้วไม่รู้เรื่องเราจะแปลงจาก timestamps เป็น วัน เวลากัน

for i in range(len(df['date'])):
df['date'][i] = df['date'].values[i]/1000
df['date'][i] = pd.Timestamp(df['date'][i], unit='s')

ตัวอย่างข้างบนเป็นส่วนนึงในการทำ Data Manipulation นะครับเอา keywords นี้ไปค้นหาต่อได้

ลอง plot Parabolic SAR

df['SAR'] = ta.SAR(df['high'], df['low'], acceleration = 0.02, maximum = 0.2)
df[['close', 'SAR']].plot(label = "Close Price", figsize=(15, 8))
plt.grid(True)
plt.legend()
plt.show()

บทความนี้ยาวมว๊วาากกก 555555 ถ้าน้ำเยอะขออภัยนะครับอิอิ

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

No responses yet

Write a response