PDF下载 下载

python编程问题

阅读 2001
- 如何获取历史时期全市场的所有股票?
  • 通过get_instrumentinfos根据市场和标的类型获取所有标的信息,再用上市日期和退市日期过滤下

 

- 如何获取所有股票的symbol?
  1. get_instrumentinfos(exchanges=['SZSE','SHSE'], sec_types=1df=True)['symbol'].values

 

- 如何获取全市场期货主力合约?
  • 代码如下:
  1. def get_main_future(context):
  2. '''
  3. 此函数用于获取全市场当前时间的主力合约
  4. '''
  5. #查询全市场期货合约
  6. ins_data = get_instruments(sec_types=4, df=True)
  7. #筛选掉已经退市的合约
  8. live_future = ins_data[ins_data['delisted_date'] > context.now.strftime('%Y-%m-%d')]
  9. #返回当前日期的前一个交易日时间
  10. last_day = get_previous_trading_date(exchange='SHFE', date=context.now.strftime('%Y-%m-%d'))
  11. #获取全市场期货合约前一个交易日的信息
  12. future = get_history_instruments(symbols=live_future['symbol'].tolist(), start_date=last_day, end_date=last_day, df=True)
  13. #对期货合约代码做处理,处理成为‘交易所+名称’的格式
  14. future['name'] = future.apply(lambda x: x['symbol'].rstrip(string.digits), axis=1)
  15. #将当前成交量最大的规则筛选出主力合约
  16. future['max_position'] = future.groupby('name')['position'].transform('max')
  17. #取出主力合约代码
  18. main_future = future[(future['position'] == future['max_position']) & (future['position'] > 0)]['symbol'].tolist()
  19. #返回主力合约代码
  20. return main_future

 

- 掘金3的常见指标实现?

 

- 策略ID和token ID的作用是什么?
  • 策略ID用于终端识别策略身份;token ID用于服务端识别用户登录身份,如从服务器提取数据。

  • 实时模式下启动策略会检查这两个ID,需要正确填写。

- 如何在掘金里用Python读取本地主机的数据库数据?
  • 可以使用python读取数据库的第三方模块,例如pymysql。掘金是使用本地的python环境,没有限制第三方模块的使用。
0 篇笔记