diff --git a/market_trade/core/CoreTraidMath.py b/market_trade/core/CoreTraidMath.py index a8c36e5..1702f1e 100644 --- a/market_trade/core/CoreTraidMath.py +++ b/market_trade/core/CoreTraidMath.py @@ -1,51 +1,50 @@ - -import pandas as pd -import datetime import numpy as np -import plotly as pl -import plotly.graph_objs as go -import matplotlib.pyplot as plt -import math -import scipy -import random -import statistics - - -import datetime - - - class CoreMath: - def __init__(self, base_df, params={ - 'dataType':'ohcl', - 'action': None, - 'actionOptions':{} - } - ): - - self.base_df=base_df.reset_index(drop=True) - self.params=params + def __init__(self, base_df, params=None): + """ + Этот класс нужен для того, чтобы проводить операции над датафреймами + :param base_df: pandas.DataFrame , датафрейм, над которым будут проведены математические операции + :param params: словарь, который определяет какие данные пришли в класс, и что с ними нужно делать, и как + """ + if params is None: + params = { + 'dataType': 'ohcl', + 'action': None, + 'actionOptions': {} + } + + # нужно переопределить индексы, потому что нам ничего не известно об индексации входного файла + self.base_df = base_df.reset_index(drop=True) + + self.params = params + + # Эта часть определяет с какой частью данных нужно проводить вычисления if self.params['dataType']=='ohcl': self.col=self.base_df[self.params['actionOptions']['valueType']] elif self.params['dataType']=='series': self.col=self.base_df + + # собственно производим вычисления self.ans=self.getAns() - - + def getAns(self): + """ + Эта функция занимается собственно рутингом вычислений, в зависимости от параметров + :return: ans, неопределенный тип данных, в заивисимости от action + """ ans=None - + + # в зависимости от параметра action производятся соответсвующие действия if self.params['action']=='findExt': ans = self.getExtremumValue() elif self.params['action']=='findMean': ans = self.getMeanValue() elif self.params['action']=='findSTD': - ans=self.getSTD() - - + ans = self.getSTD() + return ans