[Day 13]

一、短线资料(5分线)

读取需要的Libiary

import datetime
import warnings

import pandas as pd
import requests
from pandas.core.common import SettingWithCopyWarning

warnings.simplefilter(action="ignore", category=SettingWithCopyWarning)
pd.set_option("display.max_columns", None)

捞取Tick资料

stock_date = datetime.datetime(2019, 1, 1, 0, 0)
url = "https://api.finmindtrade.com/api/v4/data"
parameter = {
    "dataset": "TaiwanStockPriceTick",
    "start_date": stock_date.strftime("%Y-%m-%d"),
    "data_id": 2330,
}

data = requests.get(url, params=parameter)
data = data.json()

if data["status"] != 200:
    raise ("Return Error")

if len(data["data"]) == 0:
    continue
   
df = pd.DataFrame(data["data"])

https://ithelp.ithome.com.tw/upload/images/20210918/201415869D7YeEdTr5.png

指定盘中资料、合并时间栏位

df = df.loc[
    (df["Time"] >= "10:00:00") & (df["Time"] <= "13:00:00")
]

df.loc[:, "date"] = pd.to_datetime(
    df["date"] + " " + df["Time"]
)

df.drop(columns=["Time"], inplace=True)

https://ithelp.ithome.com.tw/upload/images/20210918/20141586XPFOc24zH0.png

合并5分内资料

df = df.set_index("date")
deal_price = df["deal_price"].resample("5T").last().ffill()
volume = df["volume"].resample("5T").sum()

df = pd.concat([deal_price, volume], axis=1).reset_index()

https://ithelp.ithome.com.tw/upload/images/20210918/20141586gCP0ncSPAD.png


<<:  Day3 Redis服务器环境设定

>>:  [Day 18] 资料产品生命周期管理-自动决策

Day 29 - 使用 Config 为 NestJS 专案拆分不同开发环境

前言 终於来到了第 29 天了,也就是名义上技术篇章的最後一篇了 XDD,到了今天我还真是突然不知道...

[Day_15]回圈与生成式

回圈结构 - 使用for for回圈结构通常用於已知重复次数的方程序, 回圈结构中指定回圈变数的初始...

.NET 前後分离 Web API 蓝新金流串接

本文将介绍在前後分离的状况下,後端如何与前端配合制作 Web API ,串接蓝新金流服务。 .NET...

Day 18: LeetCode 322. Coin Change

Day 18: LeetCode 322. Coin Change Tag: follow John...

Day 0x1E UVa11321 Sort! Sort!! and Sort!!!

Virtual Judge ZeroJudge 题意 真.排序题 输入数字,按照要求输出排序後的结...