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
    • J

      Alpha Default Value of EMA function
      Strategy help • • juzambranol

      5
      0
      Votes
      5
      Posts
      1597
      Views

      support

      @gjhernandezp yes, correct, 2/(n+1), sorry for the typo, thanks for correcting

    • N

      KeyError: "cannot represent labeled-based slice indexer for coordinate 'time' with a slice over integer positions; the index is unsorted or non-unique"
      Support • • newbiequant96

      5
      0
      Votes
      5
      Posts
      1204
      Views

      M

      @newbiequant96 no problem.
      I think the issue now is unrelated to the the previous issue. If you can show what is written above return code 1, I can maybe help.
      It seems to be an issue in the code.
      Regards

    • cespadilla

      Leaderboard not updating?
      Support • competition leaderboard q16 • • cespadilla

      5
      1
      Votes
      5
      Posts
      2442
      Views

      cespadilla

      @support Hi again guys, I think the leaderboard is not updating again 😳

    • illustrious.felice

      Accessing Quantiacs takes too long
      Support • • illustrious.felice

      5
      1
      Votes
      5
      Posts
      1560
      Views

      illustrious.felice

      @support Hello. My strategy has the id #16934018 and was submitted in early May, but pnl OS has not been updated yet. Please check this issue. Thank you.

    • C

      How to fix this error
      Support • • cyan.gloom

      5
      0
      Votes
      5
      Posts
      2396
      Views

      C

      @antinomy
      Thanks for your advice !

    • S

      Calculation time exceeded
      Request New Features • • Sun-73

      5
      0
      Votes
      5
      Posts
      3014
      Views

      support

      @eddiee Dear eddiee, no, please, for the moment do not resubmit. The timed out submissions are stored as timed out submissions and we can reprocess them. In case you need resubmission, we will let you know.

    • magenta.grimer

      Some clarifications
      General Discussion • • magenta.grimer

      5
      0
      Votes
      5
      Posts
      2092
      Views

      support

      @magenta-grimer Hi, we cannot provide the list of strategies we are still trading and the payouts. However, all the statistics are public, the new ones (since Q15) and the old ones at:
      https://legacy.quantiacs.com/Systems.aspx

    • M

      Trying to understand trading
      Support • • mobile.mr_mime

      5
      2
      Votes
      5
      Posts
      897
      Views

      M

      @support Thanks for the detailed answer, that seems to be it, here is the final code:

      import xarray as xr import qnt.stats as qns import qnt.output as qnout import qnt.data as qndata # single-stock trading data = qndata.futures.load_data(min_date="2005-01-01", assets=["F_ES"]) # attempting an optimal (unrealistic) long-only strategy # by looking at future prices, and investing only if there will be profit next_price_open = data.sel(field="open").shift(time=-1) next2_price_open = data.sel(field="open").shift(time=-2) weights = xr.where(next_price_open < next2_price_open, 1.0, 0.0) # sell short when optimal: # weights = xr.where(next_price_open > next2_price_open, -1.0, weights) weights = qnout.clean(weights, data) qnout.check(weights, data) qnout.write(weights) stats = qns.calc_stat( data, weights, # ignoring slippage for simplicity slippage_factor=0, roll_slippage_factor=0) stats.loc[:, "equity"].plot.step();
    • X

      Pandas and xarray
      Strategy help • • xiaolan

      5
      1
      Votes
      5
      Posts
      1041
      Views

      support

      @xiaolan Ok, but please note that you can work all the time with xarray, the documentation is very good:

      http://xarray.pydata.org/en/stable/

    • G

      Colab new error 'EntryPoints' object has no attribute 'get'
      Support • • gjhernandezp

      5
      0
      Votes
      5
      Posts
      1432
      Views

      support

      @gjhernandezp Thank you for sharing your solution!

    • C

      Setup an environment at Google Colab
      Support • • cortezkwan

      5
      2
      Votes
      5
      Posts
      1065
      Views

      C

      @support Great help! Thank you so much!

    • E

      Q17 Contest
      General Discussion • • EDDIEE

      5
      0
      Votes
      5
      Posts
      1313
      Views

      support

      @theflyingdutchman Yes, we are integrating new data sources for a new asset class, once we are done (next week) the data and leaderboard updates will start again.

    • R

      I cant not find my strategy in Q23 leaderboard
      Support • • RoyPalo

      5
      0
      Votes
      5
      Posts
      2573
      Views

      support

      @sun-73 @RoyPalo, Hi,

      Q23 Leaderboard was updated several days ago, all eligible submissions are there now, sorry for late notice. Please let us know if you find any submission that is missing.

    • N

      How to filter ticker futures by sharpe
      Support • • newbiequant96

      5
      1
      Votes
      5
      Posts
      1751
      Views

      N

      @vyacheslav_b Thank you so much.

      I have one more question for you to answer. I ran the precheck and the result was nan value the first time, but I set the min_date to 2005 - 01 - 01. I would like to ask, why is there a nan value problem? Is it because the ticker I chose had some companies that weren't listed at that time? My strategy id code is # 16767242. Thank you so much

      Screenshot 2024-04-09 173002.png
      Screenshot 2024-04-09 173012.png

    • A

      Q23 should be running now, but not able to join, right?
      Support • • angusslq

      5
      0
      Votes
      5
      Posts
      3218
      Views

      support

      @green-flareon Thanks. The live phase of the Q23 is running. Quants can join any contest during the submission phase. Q24 is on.

    • M

      Missed call to write_output although had included it
      Support • • multi_byte.wildebeest

      5
      0
      Votes
      5
      Posts
      926
      Views

      V

      @illustrious-felice Hello. please look at this post
      https://quantiacs.com/community/topic/515/what-is-forward-looking-and-why-it-s-effective-badly-to-strategy/6?_=1711712434795

    • M

      Differences between Sharpe in Precheck and Sharpe in strategy.ipynb
      Support • • multi_byte.wildebeest

      5
      0
      Votes
      5
      Posts
      1113
      Views

      M

      @support Thank you !

    • news-quantiacs

      The Winners of the Q15 Futures and BTC Contests
      News and Feature Releases • • news-quantiacs

      5
      1
      Votes
      5
      Posts
      3594
      Views

      support

      @algotime Hello, on 1st November allocations will start, you will receive a mail soon today!

    • E

      Strategy Optimization in local development environment is not working
      Support • • EDDIEE

      5
      0
      Votes
      5
      Posts
      1154
      Views

      V

      @eddiee

      This code works for me. I can give you ideas on what to try.

      Update the qnt library or reinstall.

      If it doesn't help, clone the repository

      https://github.com/quantiacs/toolbox

      git clone https://github.com/quantiacs/toolbox.git

      run
      qnt/examples/005-01-optimizer.py
      and other examples.

      You may need to specify API_KEY

      You might be able to see exactly where the error occurs in the code.
      And you can modify the library code by adding logging for optimize_strategy

    • illustrious.felice

      Strategy trades illiquid instruments
      Support • • illustrious.felice

      5
      0
      Votes
      5
      Posts
      3452
      Views

      V

      @illustrious-felice Hello. The reason you're still seeing a large number of tickers (e.g., around 300) even after applying the filter is that the "best" instrument by Sharpe ratio changes over time. The rank_assets_by function returns a time-dependent mask, selecting the top N assets at each time step. So the total number of unique assets that were selected at any point in time may be much larger than top_assets.

      This is expected behavior.

      To illustrate this more clearly, let's consider a minimal working example that selects only 1 top asset at each point in time and shows all the intermediate steps:

      import qnt.data as qndata import qnt.ta as qnta import qnt.stats as qnstats import qnt.output as qnout import qnt.filter as qnfilter import xarray as xr import pandas as pd top_assets = 1 data = qndata.stocks.load_spx_data(min_date="2005-06-01") weights = data.sel(field="is_liquid") stats_per_asset = qnstats.calc_stat(data, weights, per_asset=True) sharpe_ratio = stats_per_asset.sel(field="sharpe_ratio") asset_filter = qnfilter.rank_assets_by(data, sharpe_ratio, top_assets, ascending=False) weights = weights * asset_filter stats = qnstats.calc_stat(data, weights.sel(time=slice("2005-06-01", None))) display(asset_filter.to_pandas().tail()) display(stats.to_pandas().tail()) display(sharpe_ratio.to_pandas().tail()) display(weights.to_pandas().tail())

      If you want to see which asset was the best on specific dates, you can do something like this:

      dates = ["2015-01-15", "2020-01-15", "2025-01-15"] records = [] for date_str in dates: best_mask = asset_filter.sel(time=date_str) assets = best_mask.where(best_mask > 0, drop=True).asset.values srs = sharpe_ratio.sel(time=date_str, asset=assets).values for a, s in zip(assets, srs): records.append({"time": date_str, "asset": a.item(), "sharpe_ratio": float(s)}) df = pd.DataFrame(records).set_index("time") display(df) asset sharpe_ratio time 2025-05-22 NYS:HRL 1.084683 2025-05-22 NAS:KDP 1.093528 2025-05-22 NAS:AAPL 0.968039

      Or simply for a single date:

      date = "2020-05-22" best_mask = asset_filter.sel(time=date) best_assets = best_mask.where(best_mask > 0, drop=True).asset best_sr = sharpe_ratio.sel(time=date, asset=best_assets) print(best_sr.to_pandas())

      This shows clearly that only one asset is selected at each time step, but over the full time range, many different assets can appear in the top list depending on how their Sharpe ratios change.

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