예제 #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)