Navigation

    Quantiacs Community

    • Register
    • Login
    • Search
    • Categories
    • News
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    1. Home
    2. Popular
    Log in to post
    • All categories
    • Support
    •      Request New Features
    • Strategy help
    • General Discussion
    • News and Feature Releases
    • All Topics
    • New Topics
    • Watched Topics
    • Unreplied Topics
    • All Time
    • Day
    • Week
    • Month
    • M

      training, predicting and backtesting Neural Network
      Support • • magenta.kabuto

      4
      0
      Votes
      4
      Posts
      564
      Views

      support

      @magenta-kabuto The weights generated are simply the daily allocations to the various assets.

    • O

      Where can I get the OHLC data of Nasdaq100 index?
      Support • • omohyoid

      4
      0
      Votes
      4
      Posts
      543
      Views

      O

      @support Thanks for ur help

    • A

      Futures contests and BTC??
      Support • • anthony_m

      4
      1
      Votes
      4
      Posts
      1294
      Views

      support

      @anthony_m we patched with spot BTC data see answer: https://quantiacs.com/community/topic/6/btc-contest-start-date

    • E

      Improving Quantiacs: Aligning Developer Objectives with the ones of Quantiacs
      General Discussion • developers improvement quantiacs rankings risk • • EDDIEE

      4
      3
      Votes
      4
      Posts
      1408
      Views

      N

      @eddiee Hi, Mr. Eddie.

      I am new to building strategies using ML/DL on Quantiacs and am very impressed with the OS performance of your ML strategies. I hope you can give me your contact (mail, limkedin,...) so I can learn from your experience in building an ML/DL strategy.

      Sincerely thank.

    • C

      Why Sharp ratios is not inverted ?
      Strategy help • • cyan.gloom

      4
      0
      Votes
      4
      Posts
      2100
      Views

      C

      @support
      Thanks a lot !

    • A

      Correlation fails although Sharpe ratio > 1
      Support • • agent.hitmonlee

      4
      0
      Votes
      4
      Posts
      500
      Views

      A

      Thanks for the answer!

      I still think something is wrong with this correlation checker. I even used this function to randomize the weights a few times, and I got the same correlation error:

      def add_random_noise(weights, noise_level=0.01): noise = np.random.uniform(-noise_level, noise_level, size=weights.shape) return weights + noise

      I am pretty sure it's impossible to have 90% correlation in this case.

    • C

      How to load data to work with Multi-backtesting_ml
      Strategy help • • cyan.gloom

      4
      1
      Votes
      4
      Posts
      1818
      Views

      V

      @cyan-gloom

      Hello. The provided code is insufficient to understand the problem.

      I assume that a certain function might not be returning the required value (for instance, the function where your model is being created).

      I recommend that you check all return values of functions, using tools like display or print. Then, compare them with what is returned in properly working examples.

      The state allows you to use data from previous iterations. You can find an example here:
      https://github.com/quantiacs/toolbox/blob/2f4c42e33c7ce789dfad5d170444fd542e28c8ae/qnt/examples/004-strategy-futures-multipass-stateful.py

    • R

      example not accepted as submission
      Support • • rezhak21

      4
      1
      Votes
      4
      Posts
      1064
      Views

      support

      @rezhak21 Rules are defined at: https://quantiacs.com/contest and more details for the current contests (submission time till end of May) can be found at: https://quantiacs.com/contest/15

      For Futures the in sample period starts on January 1st 2006, for the BTC Futures on January 1st, 2014

    • news-quantiacs

      New futures data and next-to-front contracts
      News and Feature Releases • • news-quantiacs

      4
      1
      Votes
      4
      Posts
      957
      Views

      support

      @magenta-grimer Hello, we updated the documentation.

      Now there are 78 futures contracts. Yes, we allow allocating to only 1 asset. If you trade more assets, then you can go long on some of them and short others.

      Using more assets helps in increasing the Sharpe ratio, as the mean return grows linearly with the number of assets, and the volatility in the denominator with the square root of the number of assets if there are no correlation terms.

      Using uncorrelated assets would then lead to a scaling of the Sharpe ratio with the square root of the number of assets. In practice, however, correlation terms are decreasing this growth.

      Stated more simply, it is a good idea to avoid putting all your eggs in the same basket...

    • S

      Pairs trading with states iterations
      Strategy help • • spancham

      4
      0
      Votes
      4
      Posts
      971
      Views

      S

      @support
      Cool, thanks very much! 👍

    • J

      Fundamental Data: Periodic indicators & Instant indicators
      Strategy help • • johback

      4
      1
      Votes
      4
      Posts
      1346
      Views

      V

      @johback

      Hello

      More examples are here https://github.com/quantiacs/toolbox/blob/main/qnt/tests/test_fundamental_data.py

      This is a simple example.

      import qnt.data as qndata import datetime as dt import qnt.data.secgov_indicators import qnt.data as qndata import qnt.stats as qns assets = qndata.stocks.load_ndx_list(tail=dt.timedelta(days=5 * 365)) assets_names = [i["id"] for i in assets] data = qndata.stocks.load_ndx_data(tail=dt.timedelta(days=5 * 365), dims=("time", "field", "asset"), assets=assets_names, forward_order=True) facts_names = ['operating_expense'] # 'assets', 'liabilities', 'ivestment_short_term' and other fundamental_data = qnt.data.secgov_load_indicators(assets, time_coord=data.time, standard_indicators=facts_names) # Operating expenses include marketing, noncapitalized R&D, # travel and entertainment, office supply, rent, salary, cogs... weights = fundamental_data.sel(field='operating_expense') is_liquid = data.sel(field="is_liquid") weights = weights * is_liquid # calc stats stats = qns.calc_stat(data, weights.sel(time=slice("2006-01-01", None))) display(stats.to_pandas().tail()) # graph performance = stats.to_pandas()["equity"] import qnt.graph as qngraph qngraph.make_plot_filled(performance.index, performance, name="PnL (Equity)", type="log")
    • M

      Why we need to limit the time to process the strategy ?
      Support • • multi_byte.wildebeest

      4
      0
      Votes
      4
      Posts
      692
      Views

      support

      @multi_byte-wildebeest Hi, these limitations refer to the processing time per point in time, not for the full strategy.

      If it takes 10 minutes per historical day, and the simulation has to take into account 250 days for let us say 10 years, the multi-pass simulation would process 6 days per hour, 144 days per real day, that means 2 weeks of processing time for the full submission, it is a lot of time.

    • O

      Can I use astronomical data as features for my machine learning model?
      Support • • omohyoid

      4
      0
      Votes
      4
      Posts
      944
      Views

      O

      @support Thx for ur reply

    • N

      SMA Example
      Support • • Nikos84

      4
      0
      Votes
      4
      Posts
      611
      Views

      N

      @support Thank you!

    • S

      Q22 submission, strategies excluded
      Support • • Sun-73

      4
      1
      Votes
      4
      Posts
      1136
      Views

      S

      Hi @support, everything is all right now. Thank you!

    • P

      Xarray Value Error
      Strategy help • • pink.seel

      4
      0
      Votes
      4
      Posts
      830
      Views

      support

      @pink-seel Super that you found it, please do not hesitate to ask for support!

    • T

      Calculation time exceeded on submission
      Support • • TheFlyingDutchman

      4
      1
      Votes
      4
      Posts
      920
      Views

      V

      @theflyingdutchman Hello,

      Another option is to rewrite your strategy for a single-pass version before submitting it. This approach will significantly speed up the calculations. However, it's important to note that the actual statistical values can only be tracked after submitting the strategy to the competition.

      For example:
      https://github.com/quantiacs/strategy-ml-crypto-long-short/blob/master/strategy.ipynb

      To adapt this strategy for a single-pass version, follow these steps:

      Comment out or delete the line where qnbt.backtest_ml is used. Insert the following code: import xarray as xr import qnt.ta as qnta import qnt.data as qndata import qnt.output as qnout import qnt.stats as qnstats retrain_interval = 3*365 + 1 data = qndata.stocks.load_ndx_data(tail=retrain_interval) models = train_model(data) weights = predict(models, data) In a new cell, insert code to save the weights: qnout.write(weights)

      To view the strategy's statistics, use the following code in a new cell:

      # Calculate stats stats = qnstats.calc_stat(data, weights) display(stats.to_pandas().tail()) # Graph performance = stats.to_pandas()["equity"] import qnt.graph as qngraph qngraph.make_plot_filled(performance.index, performance, name="PnL (Equity)", type="log")

      The qnbt.backtest_ml function is a unique tool for evaluating machine learning strategies, which stands out from what is offered on other platforms. It allows users to set retraining intervals and analyze statistical metrics of the strategy, as opposed to the traditional evaluation of the machine learning model. This provides a deeper understanding of the strategy's effectiveness under various market conditions.

    • R

      referral program
      General Discussion • • rezhak21

      4
      0
      Votes
      4
      Posts
      765
      Views

      R

      @support I see, need to push them to submit then....

    • A

      Submission Logic Questions
      Support • • auxiliary.snail

      4
      0
      Votes
      4
      Posts
      1345
      Views

      support

      @auxiliary-snail Hi,

      unfortunately, this is not allowed and in accordance with the rules. Using hard-coded time periods in which trading algorithm will work differently, is not a quantitative method (just like manual asset selection, e.g. "trade only Apple or Microsoft"). We still haven't implemented a mechanism for automatic recognition of such behaviors in trading strategies, and even though a strategy could be successfully submitted, it will not be eligible for prize winning.
      What we are searching for, is well performing strategy over entire in_sample period (SR>0.7), robust to all market movements 2006-2025, so we can expect it will perform well in future, too.

    • magenta.grimer

      Importing external data
      General Discussion • • magenta.grimer

      4
      1
      Votes
      4
      Posts
      1089
      Views

      support

      @penrose-moore Thank you for the idea. For the Bitcoin Futures contest we are indeed patching the Bitcoin Futures data with the BTC spot price to build a meaningful time series. For the other Futures contracts, for the moment we will keep the futures histories only, but add spot prices + patching with spot prices to increase the length of the time series to our to-do list.

    • Documentation
    • About
    • Career
    • My account
    • Privacy policy
    • Terms and Conditions
    • Cookies policy
    Home
    Copyright © 2014 - 2021 Quantiacs LLC.
    Powered by NodeBB | Contributors