当前位置: 首页>>代码示例>>Python>>正文


Python AssetFinder.consume_metadata方法代码示例

本文整理汇总了Python中zipline.assets.AssetFinder.consume_metadata方法的典型用法代码示例。如果您正苦于以下问题:Python AssetFinder.consume_metadata方法的具体用法?Python AssetFinder.consume_metadata怎么用?Python AssetFinder.consume_metadata使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在zipline.assets.AssetFinder的用法示例。


在下文中一共展示了AssetFinder.consume_metadata方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_consume_metadata

# 需要导入模块: from zipline.assets import AssetFinder [as 别名]
# 或者: from zipline.assets.AssetFinder import consume_metadata [as 别名]
    def test_consume_metadata(self):

        # Test dict consumption
        finder = AssetFinder({0: {'asset_type': 'equity'}})
        dict_to_consume = {0: {'symbol': 'PLAY'},
                           1: {'symbol': 'MSFT'}}
        finder.consume_metadata(dict_to_consume)
        self.assertEqual('equity', finder.metadata_cache[0]['asset_type'])
        self.assertEqual('PLAY', finder.metadata_cache[0]['symbol'])

        # Test dataframe consumption
        df = pd.DataFrame(columns=['asset_name', 'exchange'], index=[0, 1])
        df['asset_name'][0] = "Dave'N'Busters"
        df['exchange'][0] = "NASDAQ"
        df['asset_name'][1] = "Microsoft"
        df['exchange'][1] = "NYSE"
        finder.consume_metadata(df)
        self.assertEqual('NASDAQ', finder.metadata_cache[0]['exchange'])
        self.assertEqual('Microsoft', finder.metadata_cache[1]['asset_name'])
        # Check that old data survived
        self.assertEqual('equity', finder.metadata_cache[0]['asset_type'])
开发者ID:aikssai,项目名称:zipline,代码行数:23,代码来源:test_assets.py

示例2: test_consume_metadata

# 需要导入模块: from zipline.assets import AssetFinder [as 别名]
# 或者: from zipline.assets.AssetFinder import consume_metadata [as 别名]
    def test_consume_metadata(self):

        # Test dict consumption
        finder = AssetFinder()
        dict_to_consume = {0: {'symbol': 'PLAY'},
                           1: {'symbol': 'MSFT'}}
        finder.consume_metadata(dict_to_consume)

        equity = finder.retrieve_asset(0)
        self.assertIsInstance(equity, Equity)
        self.assertEqual('PLAY', equity.symbol)

        finder = AssetFinder()

        # Test dataframe consumption
        df = pd.DataFrame(columns=['asset_name', 'exchange'], index=[0, 1])
        df['asset_name'][0] = "Dave'N'Busters"
        df['exchange'][0] = "NASDAQ"
        df['asset_name'][1] = "Microsoft"
        df['exchange'][1] = "NYSE"
        finder.consume_metadata(df)
        self.assertEqual('NASDAQ', finder.metadata_cache[0]['exchange'])
        self.assertEqual('Microsoft', finder.metadata_cache[1]['asset_name'])
开发者ID:ronalcc,项目名称:zipline,代码行数:25,代码来源:test_assets.py

示例3: TradingEnvironment

# 需要导入模块: from zipline.assets import AssetFinder [as 别名]
# 或者: from zipline.assets.AssetFinder import consume_metadata [as 别名]

#.........这里部分代码省略.........
                            asset_metadata=None,
                            identifiers=None):
        """
        Updates the AssetFinder using the provided asset metadata and
        identifiers.
        If clear_metadata is True, all metadata and assets held in the
        asset_finder will be erased before new metadata is provided.
        If asset_finder is provided, the existing asset_finder will be replaced
        outright with the new asset_finder.
        If asset_metadata is provided, the existing metadata will be cleared
        and replaced with the provided metadata.
        All identifiers will be inserted in the asset metadata if they are not
        already present.

        :param clear_metadata: A boolean
        :param asset_finder: An AssetFinder object to replace the environment's
        existing asset_finder
        :param asset_metadata: A dict, DataFrame, or readable object
        :param identifiers: A list of identifiers to be inserted
        :return:
        """
        populate = False
        if clear_metadata:
            self.asset_finder.clear_metadata()
            populate = True

        if asset_finder is not None:
            if not isinstance(asset_finder, AssetFinder):
                raise UpdateAssetFinderTypeError(cls=asset_finder.__class__)
            self.asset_finder = asset_finder

        if asset_metadata is not None:
            self.asset_finder.clear_metadata()
            self.asset_finder.consume_metadata(asset_metadata)
            populate = True

        if identifiers is not None:
            self.asset_finder.consume_identifiers(identifiers)
            populate = True

        if populate:
            self.asset_finder.populate_cache()

    def normalize_date(self, test_date):
        test_date = pd.Timestamp(test_date, tz='UTC')
        return pd.tseries.tools.normalize_date(test_date)

    def utc_dt_in_exchange(self, dt):
        return pd.Timestamp(dt).tz_convert(self.exchange_tz)

    def exchange_dt_in_utc(self, dt):
        return pd.Timestamp(dt, tz=self.exchange_tz).tz_convert('UTC')

    def is_market_hours(self, test_date):
        if not self.is_trading_day(test_date):
            return False

        mkt_open, mkt_close = self.get_open_and_close(test_date)
        return test_date >= mkt_open and test_date <= mkt_close

    def is_trading_day(self, test_date):
        dt = self.normalize_date(test_date)
        return (dt in self.trading_days)

    def next_trading_day(self, test_date):
        dt = self.normalize_date(test_date)
开发者ID:rand-RI,项目名称:DM,代码行数:70,代码来源:trading.py


注:本文中的zipline.assets.AssetFinder.consume_metadata方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。