Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    Lespan
    @Lespan
    @you-n-g Thanks!
    onepointfuck
    @onepointfuck
    How to join the Qlib team and what are the requirements for interns?
    Pengrong Zhu
    @zhupr

    @gxxuej Hi,
    I can’t reproduce this bug in the same environment.

    You can use the latest qlib(https://github.com/microsoft/qlib) for more information: cd scripts && python collect_info.py all

    you-n-g
    @you-n-g
    @onepointfuck You can send your resume to our email qlib@microsoft.com
    gxxuej
    @gxxuej
    @zhupr Thanks!
    Jagadish Kumar E 🇮🇳
    @javajk_twitter
    Hi Team, Currently QLib supports only two regions datasets. Any tentative dates when India region shall be supported and If I have to define India region on my own what all need to be done any pointers shall be helpful
    you-n-g
    @you-n-g
    @javajk_twitter Qlib doesn't limit the region of the datasets.
    You can send PR to create a data collector to crawl data from india market.
    Jagadish Kumar E 🇮🇳
    @javajk_twitter
    @you-n-g : Thanks for your response, How do I raise PR ?
    you-n-g
    @you-n-g
    @javajk_twitter You can raise PR to Qlib like normal opensource project.
    Thanks!
    mo.zi
    @mozi7
    hi, guys, I notice use the pip install is always un-success, could you please tell me how to fix it?
    you-n-g
    @you-n-g

    @mozi7 Can you give us more details about your error?
    Thanks

    We have include pip install test in our CI
    https://github.com/microsoft/qlib/blob/70c84cbc77e52bea67e4528d6f79e2e462a4ffa6/.github/workflows/test.yml#L39

    It suceeded in all kinds of platforms. You can check the commands it uses.

    liu100286
    @liu100286
    Hello, where can I set the number of trading stocks as a multiple of 100?
    Jagadish Kumar E 🇮🇳
    @javajk_twitter

    Hello, I have two sets of datasets in csv format. One is the historical dataset and another one is the delta or current days shares OHLC values. When i run convert the historical dataset in csv format to bin format everything goes fine. But when I try to update the current days data in csv format to bin format i get following error "NaT is not in list" For the first time to convert from CSV format to bin format i use following command

    dump_bin.py dump_all --csv_path=nf.csv --qlib_dir=C:/data/.qlib/qlib_data/in_data --include_fields open,close,high,low,factor,tottrdqty,tottrdval

    For the second time to convert from CSV format to bin format i use following command

    dump_bin.py dump_update --csv_path=nf.csv --qlib_dir=C:/data/.qlib/qlib_data/in_data --include_fields open,close,high,low,factor,tottrdqty,tottrdval

    Is the command and arguments passed is correct or not, please let me know.

    Following is the error I get when i run the above command to convert the current days data to bin format

    dump bin errors: {'ABB': 'concurrent.futures.process._RemoteTraceback: \n"""\nTraceback (most recent call last):\n File "D:\Anaconda\lib\concurrent\futures\process.py", line 239, in _process_worker\n r = call_item.fn(call_item.args, *call_item.kwargs)\n File "E:\qlib-jk\qlib\scripts\dump_bin.py", line 250, in _dump_bin\n self._data_to_bin(df, calendar_list, features_dir)\n File "E:\qlib-jk\qlib\scripts\dump_bin.py", line 220, in _data_to_bin\n date_index = self.get_datetime_index(_df, calendar_list)\n File "E:\qlib-jk\qlib\scripts\dump_bin.py", line 211, in get_datetime_index\n return calendar_list.index(df.index.min())\nValueError: NaT is not in list\n"""\n\nThe above exception was the direct cause of the following exception:\n\nTraceback (most recent call last):\n File "dump_bin.py", line 467, in _dump_features\n _future.result()\n File "D:\Anaconda\lib\concurrent\futures\_base.py", line 432, in result\n return self.get_result()\n File "D:\Anaconda\lib\concurrent\futures\_base.py", line 388, in get_result\n raise self._exception\nValueError: NaT is not in list\n'}

    2 replies
    you-n-g
    @you-n-g

    Hello, where can I set the number of trading stocks as a multiple of 100?

    Just for marking this question as solved in microsoft/qlib#395

    Jagadish Kumar E 🇮🇳
    @javajk_twitter
    Hello, I am trying on custom data for Indian market. I have converted NSE data to bin format. Now I wanted to run few existing forecasting models. I see that in all the yaml files, where we are initializing the configurations we have two arguments market and benchmark. What value should I provide. (i.e. the default value is market: &market us & benchmark: &benchmark ACC) For the Market i can give it as US, for benchmark what is the value to be given, I gave the NSE stock name ACC, I am getting following error "The benchmark ['ACC'] does not exist. Please provide the right benchmark"
    vs_99
    @vs_99:matrix.org
    [m]
    Hey, is there a way to create ensemble models of all the available models in qlib?
    Also, how can I edit the data api so as to have the code take open price and volume data and predict open price data?
    you-n-g
    @you-n-g
    @javajk_twitter Could you please send us more details about your error(e.g. the backpack information, the folder structure of your data)?
    you-n-g
    @you-n-g
    @vs_99:matrix.org Hi, Qlib supports simple interfaces to ensemble previous trained models.
    You can read the code here https://github.com/microsoft/qlib/blob/main/qlib/model/ens/ensemble.py
    Guodong Xu
    @docularxu

    Does anybody notice this error in the 'main' branch, when running "examples/workflow_by_code.ipynb" using jupyter-notebook. The error message is: "---------------------------------------------------------------------------
    TypeError Traceback (most recent call last)

    <ipython-input-7-e6a7b5f4da00> in <module>
    26 # backtest and analysis
    27 with R.start(experiment_name="backtest_analysis"):
    ---> 28 recorder = R.get_recorder(rid, experiment_name="train_model")
    29 model = recorder.load_object("trained_model")
    30

    TypeError: get_recorder() takes 1 positional argument but 2 positional arguments (and 1 keyword-only argument) were given"

    4 replies
    I didn't see such error on 29/May/2021. it happens only recently.
    w.z.
    @w.z.:matrix.org
    [m]
    does Qlib support quantitative analysis on cryptocurrencies ?
    you-n-g
    @you-n-g

    does Qlib support quantitative analysis on cryptocurrencies ?

    @w.z.:matrix.org You may be interested in this issue microsoft/qlib#387
    I guess you are interested in high-frequency trading.

    This PR in development may be helpful to you in the future
    microsoft/qlib#438

    panshuaiyin
    @panshuaiyin
    csv文件内的数据形如下图
    image.png
    dump时使用的代码如下
    python scripts/dump_bin.py dump_all --csv_path 我储存csv格式的数据的路径 --qlib_dir 我储存qlib格式的数据的路径 --symbol_field_name stock_code --date_field_name date --include_fields open,high,low,close,volume,money,factor,vwap,change
    Pengrong Zhu
    @zhupr
    @panshuaiyin
    Add the freq parameter: --freq month
    python scripts/dump_bin.py dump_all --csv_path 我储存csv格式的数据的路径 --qlib_dir 我储存qlib格式的数据的路径 --symbol_field_name stock_code --date_field_name date --include_fields open,high,low,close,volume,money,factor,vwap,change --freq month
    panshuaiyin
    @panshuaiyin
    截止到模型训练部分的代码都没问题了,但在回测时产生报错,代码和报错如下图
    image.png
    image.png
    image.png
    image.png
    请问我是不是应该在哪个地方增加一个参数“freq=‘month’”
    Pengrong Zhu
    @zhupr

    @panshuaiyin
    回测部分某些函数还不支持freq参数,之后会修复这个问题;
    这个问题可以通过下面的方法修复:

    • 在qlib数据calendars目录中,把month.txt 复制一份 重命名为 day.txt

    你可以先用上面的方法临时跑回测,等这个问题修复后再用正常方法。

    你有兴趣提PR修复这个问题吗

    panshuaiyin
    @panshuaiyin
    请问一下在哪提交PR
    Pengrong Zhu
    @zhupr
    fork qlib的代码到自己的github:https://github.com/microsoft/qlib
    然后基于这个代码进行修改,把改好的代码push到自己的github,然后从自己的仓库向https://github.com/microsoft/qlib提 PR
    panshuaiyin
    @panshuaiyin
    如果是让我修改代码的话,对我来说有点困难,我的工程能力还不太行,抱歉了
    panshuaiyin
    @panshuaiyin
    我把month.txt复制一份重命名为day.txt后,重新运行回测代码,但又出现下面这个报错了
    image.png
    看起来似乎是找不到benchmark,但我之前在日频数据上回测时没有这个问题
    而且把benchmark从hkhsi改成个股代码,比如hk0001,还是会出现报错
    Pengrong Zhu
    @zhupr
    那需要这样做了:
    重新dump一份数据, --freq day, 数据目录和原来的相同
    python scripts/dump_bin.py dump_all --csv_path 我储存csv格式的数据的路径 --qlib_dir 我储存qlib格式的数据的路径 --symbol_field_name stock_code --date_field_name date --include_fields open,high,low,close,volume,money,factor,vwap,change --freq day
    gxxuej
    @gxxuej
    Do you have a strategy code defined and written by yourself? Can you share? thank you!
    panshuaiyin
    @panshuaiyin
    虽然有这个打算,但目前还没有实现,暂时还只是想尝试一下qlib里的策略如果用在低频数据上表现如何
    Chica
    @ufosky
    image.png
    谁知道这里 start_time 和 fit_start_time什么区别,应该怎么设置吗
    Pengrong Zhu
    @zhupr

    @ufosky

    • start_time: the date when the whole process data acquisition started
    • fit_start_time: start date of the data used by the model

      start_time <= fit_start_time

    Pengrong Zhu
    @zhupr

    @ufosky
    If there are network problems, you can add the max_collector_count parameter for multiple failed retries: python collector.py xxxx --max_collector_count 5

    default is 2