示例#1
0
 def test_transform_registered(self):
     algo = TestRegisterTransformAlgorithm(sids=[133])
     algo.run(self.source)
     assert "mavg" in algo.registered_transforms
     assert algo.registered_transforms["mavg"]["args"] == (["price"],)
     assert algo.registered_transforms["mavg"]["kwargs"] == {"window_length": 2, "market_aware": True}
     assert algo.registered_transforms["mavg"]["class"] is MovingAverage
示例#2
0
 def test_df_as_input(self):
     algo = TestRegisterTransformAlgorithm(
         self.sim_params,
         sids=[0, 1]
     )
     algo.run(self.df)
     assert isinstance(algo.sources[0], DataFrameSource)
示例#3
0
    def test_multi_source_as_input_no_start_end(self):
        algo = TestRegisterTransformAlgorithm(
            sids=[133]
        )

        with self.assertRaises(AssertionError):
            algo.run([self.source, self.df_source])
示例#4
0
    def test_run_twice(self):
        algo = TestRegisterTransformAlgorithm(sim_params=self.sim_params, sids=[0, 1])

        res1 = algo.run(self.df)
        res2 = algo.run(self.df)

        np.testing.assert_array_equal(res1, res2)
示例#5
0
 def test_transform_registered(self):
     algo = TestRegisterTransformAlgorithm(sids=[133])
     algo.run(self.source)
     assert 'mavg' in algo.registered_transforms
     assert algo.registered_transforms['mavg']['args'] == (['price'], )
     assert algo.registered_transforms['mavg']['kwargs'] == \
         {'window_length': 2, 'market_aware': True}
     assert algo.registered_transforms['mavg']['class'] is MovingAverage
示例#6
0
 def test_source_as_input(self):
     algo = TestRegisterTransformAlgorithm(
         self.sim_params,
         sids=[133]
     )
     algo.run(self.source)
     self.assertEqual(len(algo.sources), 1)
     assert isinstance(algo.sources[0], SpecificEquityTrades)
示例#7
0
 def test_transform_registered(self):
     algo = TestRegisterTransformAlgorithm(sids=[133])
     algo.run(self.source)
     assert 'mavg' in algo.registered_transforms
     assert algo.registered_transforms['mavg']['args'] == (['price'],)
     assert algo.registered_transforms['mavg']['kwargs'] == \
         {'window_length': 2, 'market_aware': True}
     assert algo.registered_transforms['mavg']['class'] is MovingAverage
示例#8
0
 def test_source_as_input(self):
     algo = TestRegisterTransformAlgorithm(
         sim_params=self.sim_params,
         sids=[133]
     )
     algo.run(self.source)
     self.assertEqual(len(algo.sources), 1)
     assert isinstance(algo.sources[0], SpecificEquityTrades)
示例#9
0
    def test_data_frequency_setting(self):
        self.sim_params.data_frequency = 'daily'
        algo = TestRegisterTransformAlgorithm(sim_params=self.sim_params, )
        self.assertEqual(algo.sim_params.data_frequency, 'daily')

        self.sim_params.data_frequency = 'minute'
        algo = TestRegisterTransformAlgorithm(sim_params=self.sim_params, )
        self.assertEqual(algo.sim_params.data_frequency, 'minute')
示例#10
0
    def test_run_twice(self):
        algo = TestRegisterTransformAlgorithm(sim_params=self.sim_params,
                                              sids=[0, 1])

        res1 = algo.run(self.df)
        res2 = algo.run(self.df)

        np.testing.assert_array_equal(res1, res2)
示例#11
0
 def test_multi_source_as_input(self):
     sim_params = SimulationParameters(
         self.df.index[0],
         self.df.index[-1]
     )
     algo = TestRegisterTransformAlgorithm(
         sim_params=sim_params,
         sids=[0, 1, 133]
     )
     algo.run([self.source, self.df_source])
     self.assertEqual(len(algo.sources), 2)
示例#12
0
 def test_multi_source_as_input(self):
     sim_params = SimulationParameters(
         self.df.index[0],
         self.df.index[-1]
     )
     algo = TestRegisterTransformAlgorithm(
         sim_params=sim_params,
         sids=[0, 1, 133]
     )
     algo.run([self.source, self.df_source])
     self.assertEqual(len(algo.sources), 2)
示例#13
0
    def test_data_frequency_setting(self):
        algo = TestRegisterTransformAlgorithm(self.sim_params,
                                              data_frequency='daily')
        self.assertEqual(algo.data_frequency, 'daily')
        self.assertEqual(algo.annualizer, 250)

        algo = TestRegisterTransformAlgorithm(self.sim_params,
                                              data_frequency='minute')
        self.assertEqual(algo.data_frequency, 'minute')
        self.assertEqual(algo.annualizer, 250 * 6 * 60)

        algo = TestRegisterTransformAlgorithm(self.sim_params,
                                              data_frequency='minute',
                                              annualizer=10)
        self.assertEqual(algo.data_frequency, 'minute')
        self.assertEqual(algo.annualizer, 10)
示例#14
0
 def test_multi_source_as_input(self):
     algo = TestRegisterTransformAlgorithm(sids=[0, 1, 133])
     algo.run([self.source, self.df_source], start=self.df.index[0], end=self.df.index[-1])
     self.assertEqual(len(algo.sources), 2)
示例#15
0
 def test_panel_as_input(self):
     algo = TestRegisterTransformAlgorithm(sim_params=self.sim_params, sids=[0, 1])
     algo.run(self.panel)
     assert isinstance(algo.sources[0], DataPanelSource)
示例#16
0
 def test_panel_as_input(self):
     algo = TestRegisterTransformAlgorithm(
         sim_params=self.sim_params,
         sids=[0, 1])
     algo.run(self.panel)
     assert isinstance(algo.sources[0], DataPanelSource)
示例#17
0
 def test_df_as_input(self):
     algo = TestRegisterTransformAlgorithm(self.sim_params, sids=[0, 1])
     algo.run(self.df)
     assert isinstance(algo.sources[0], DataFrameSource)
示例#18
0
    def test_multi_source_as_input_no_start_end(self):
        algo = TestRegisterTransformAlgorithm(self.sim_params, sids=[133])

        with self.assertRaises(AssertionError):
            algo.run([self.source, self.df_source])
示例#19
0
 def test_multi_source_as_input(self):
     algo = TestRegisterTransformAlgorithm(sids=[0, 1, 133])
     algo.run([self.source, self.df_source],
              start=self.df.index[0],
              end=self.df.index[-1])
     self.assertEqual(len(algo.sources), 2)