Exemplo n.º 1
0
# -*- coding: utf-8 -*-

import unittest
from datetime import datetime
import pandas as pd

try:
    from unittest.mock import patch
except ImportError:
    from mock import patch
from pandas.util.testing import assert_frame_equal
from WindAdapter.api import (factor_load, get_universe)
from WindAdapter.helper import WindQueryHelper
from WindAdapter.enums import OutputFormat

wind_query_helper = WindQueryHelper()


class MockWindData(object):
    def __init__(self, data, codes, error_code, fields, times):
        self.Data = data
        self.Codes = codes
        self.ErrorCode = error_code
        self.Fields = fields
        self.Times = times


class TestApi(unittest.TestCase):
    @patch('WindAdapter.data_provider.WindDataProvider.biz_days_list')
    @patch('WindAdapter.data_provider.WindDataProvider.query_data')
    def test_factor_load_case1(self, mock_query_data, mock_days_list):
Exemplo n.º 2
0
# -*- coding: utf-8 -*-

import re

import pandas as pd
from argcheck import expect_types
import numpy as np
from WindAdapter.data_provider import WindDataProvider
from WindAdapter.enums import FreqType
from WindAdapter.enums import Header
from WindAdapter.enums import OutputFormat
from WindAdapter.helper import WindQueryHelper
from WindAdapter.utils import date_convert_2_str
from WindAdapter.utils import py_assert

WIND_QUERY_HELPER = WindQueryHelper()
WIND_DATA_PROVIDER = WindDataProvider()


class FactorLoader:
    def __init__(self, start_date, end_date, factor_name, **kwargs):
        self.start_date = start_date
        self.end_date = end_date
        self.factor_name = factor_name
        self.sec_id = kwargs.get('sec_id', 'fulla')
        self.freq = kwargs.get('freq', FreqType.EOM)
        self.tenor = kwargs.get('tenor', None)
        self.output_data_format = kwargs.get('output_data_format',
                                             OutputFormat.MULTI_INDEX_DF)
        self.is_index = kwargs.get('is_index', True)
        self.date_format = kwargs.get('date_format', '%Y-%m-%d')