格拉姆角场
python实践(下)
… 接上
下面我们将采用CNN模型来基于格拉姆角场python实践上的结果(时序数据已转化为图像数据)进行金融预测。
import tensorflow as tf
from tensorflow.keras.optimizers import Adam
from tensorflow.keras.preprocessing.image import ImageDataGenerator
from tensorflow.keras.callbacks import ReduceLROnPlateau
from tensorflow.keras.layers import *
import datetime as dt
import glob
import os
定义函数来处理数据
# Chunks DataFrames in a way that part of the data points is found in the previous chunk
def chunker(seq: pd.DataFrame, size: int, loops: int) -> Generator:
"""
:param seq: As DataFrame
:param size: As Integer
:param loops: As integer
:return: Generator with overlapping index DataFrames
"""
rem = (seq.shape[0] - size)
rem_split = rem // loops
for i in range(10):
yield seq.iloc[(i * rem_split): -(rem - (i * rem_split))]
def ensemble_data(networks_chunks: int, path: str) -> List[pd.DataFrame]:
"""
:param networks_chunks: As Integer
:param path: As String
:return: List of overlapping index DataFrames
"""
dataframes = []
for sub_folder in ['LONG', 'SHORT']:
images = glob.glob(path + '/{}/*.png'.format(sub_folder)) # Get path to images
dates = [dt.split('/')[-1].split('\\')[-1].split('.')[0].replace('_', '-') for dt in images]
data_slice = pd.DataFrame({
'Images': images, 'Labels': [sub_folder] * len