CHANGELOG
2024-11-5
v1.4.31 Cybotrade Update
- bugfix: Bitget
post_onlylimit orders will return error when attempting to retrieve open_order. - feat: reconnection resync now replaces entire data_map with just-retrieved data.
2024-10-24
v1.4.30 Cybotrade Update
- feat: Introduce new
periodic_resyncoption forRuntimeConfig. - bugfix: coinglass historical data retrieval may sometimes retrieve unnecessary additional data.
- bugfix: 1 minute delay when closing backtest strategies.
2024-10-03
v1.4.29 Cybotrade Update
- feat: new Strategy function
Strategy.get_order_details() - bugfix: connection to Datasource may potentially hang at rare occasions.
2024-09-23
v1.4.28 Cybotrade Update
- bugfix: OrderUpdate from BitgetLinear does not connect consistently on Cloud instances.
2024-09-21
v1.4.27 Cybotrade Update
- bugfix: OrderUpdate from BitgetLinear
filledSizedoes not return cumulative filled size.
v1.4.26 Cybotrade Update
- bugfix: WebSocket connection to BitgetLinear attempts to subscribe prior to authentication success.
v1.4.25 Cybotrade Update
- bugfix: OrderUpdate from BitgetLinear returns incorrect
client_order_id.
2024-09-19
v1.4.24 Cybotrade Update
- bugfix: Live trade randomly panics with error message 'Timeout(1min)...'.
2024-09-18
v1.4.23 Cybotrade Update
- feature: Introduce new optional field for
Strategy.openandStrategy.closeknown astime_in_forcethe default value is GTC. - bugfix: Particular glassnode endpoints were causing issues with
end timeparameter. - bugfix: Market orders on Bybit set to IOC instead of GTC by default.
2024-09-2
v1.4.22 Cybotrade Update
- feature: Introduce data
caching for
RuntimeMode.Backtest. - feature: Introduce new optional field
cache_pathfor RuntimeConfig only valid in Backtest.
2024-08-24
v1.4.21 Cybotrade Update
- feature: Introduce new model
Balance. - feature: Introduce new
get_balance_data()method forStrategyTrader.
2024-08-14
v1.4.20 Cybotrade Update
- bugfix:
RuntimeMode.Backtestis unable to place any order. - bugfix: When there is downtime, a connection will not exit leading to a bricked state.
2024-08-9
v1.4.19 Cybotrade Update
- feat: spot candles are now available from this version onwards.
2024-08-8
v1.4.18 Cybotrade Update
- bugfix: cybotrade runtime might panic unexpectedly when taking to long for reconnection.
2024-07-31
v1.4.17 Cybotrade Update
- bugfix: cryptoquant data cannot be retrieved in full for certain dates.
- bugfix: resync
data_mapandsplit_data_mapleads to unnecessary on_candle_closed/on_datasource_interval invocation .
2024-07-23
v1.4.16 Cybotrade Update
- bugfix: getting position for binance using
all_positionwill return erroneous quantity
2024-07-20
v1.4.15 Cybotrade Update
- bugfix: getting position will return
0.0quantity for anyshortposition - bugfix: calling
strategy.position()withExchange.ZoomexLinearwill result in an error
2024-07-17
v1.4.14 Cybotrade Update
-bugfix: resync'd data_map and split_data_map will invoke user's
on_candle_closed and on_datasource_interval despite not having any new
data.
2024-07-12
v1.4.13 Cybotrade Update
- bugfix: calling
get_open_orderswith bitget whilst having no open orders results in an error. - bugfix: resync'd
data_mapandsplit_data_mappanics when there is no data in the map. - improvement: proactive ping-pong on Datasource WS connection for better realiability.
2024-07-08
v1.4.12 Cybotrade Update
- bugfix: Backtest unable to be ran when setting
start_timeto a date prior to Exchange Market existing. E.g: 1/1/2020 for Bybit BTC/USDT candle.
2024-07-05
v1.4.11 Cybotrade Update
- improvement:
self.data_mapandself.split_data_mapnow gets resynchronized upon any connection issues. - improvement:
permutation.pyno longer warns about SyntaxWarning.
2024-07-02
v1.4.10 Cybotrade Update
- bugfix:
update_ringbufferthrows an error on shutdown on Windows. - bugfix:
self.data_mapdoes not get updated data. - feat: Introduce new
self.split_data_map.
2024-06-25
v1.4.9 Cybotrade Update
- bugfix: Unable to retrieve >100k data from specific CryptoQuant endpoints.
- bugfix: Windows CPU incompatibility.
- feat: Introduce Zoomex exchange support.
- feat: Introduce better optimized data_map (split_data_map).
2024-06-21
v1.4.8 Cybotrade Update
- bugfix: bitget order placement with post-only fails.
- bugfix:
on_shutdowndoes not get executed when running Cybotrade on Windows.
2024-06-20
v1.4.7 Cybotrade Update
- bugfix: on_active_order_interval causes python to exit when an error is encountered.
2024-06-4
v1.4.6 Cybotrade Update
-bugfix: Strategy.get_wallet_balance not supported for Bitget.
-bugfix: Error logs showing when running any Live/LiveTestnet strategies.
-bugfix: Duplicated logs when running permutations in Backtest strategies.
-performance: Improved Backtest permutation performance by 75%.
2024-05-24
v1.4.5 Cybotrade Update
-bugfix: Strategy.position() not supported for Okx.
-bugfix: on_shutdown() event handler does not get called when Datasource
Cloud instance gets stopped.
2024-05-20
v1.4.4 Cybotrade Update
-bugfix: Spam logs when running Live or LiveTestnet Strategies.
-bugfix: get_current_available_balance() results in Error when using Bitget.
2024-05-14
v1.4.3 Cybotrade Update
-bugfix: Unable to retrieve data from Datasource topic with the same endpoints but different parameters.
-feat: Introduce Bitget exchange support.
2024-05-07
v1.4.2 Cybotrade Update
-bugfix: Order update does not receive updates after reconnection to Exchange via WS.
2024-05-05
v1.4.1 Cybotrade Update
-bugfix: Incorrect end_time values from datasource cryptoquant data.
-bugfix: on_shutdown event handler exiting prematurely.
-improvement: Improved LSP auto-completion for Strategy method
open() for is_post_only and is_hedge_mode
parameters.
-feat: Introduce OKX exchange support.
-feat: Introduce Binance exchange support.
-feat: Introduce new Strategy method,
get_order_book().
2024-04-04
v1.4.0 Cybotrade Update
-bugfix: Calling any CryptoQuant endpoints for block will result in an infinite loop.
-bugfix: When calling CryptoQuant endpoints that require the token parameter
the parameter is ignored by accident.
-feat: Updated
on_datasource_interval API arguments. It now accepts a new
data_list
-feat: Updated ActiveOrderParams fields.
It now contains a boolean is_reduce_only and float price (limit price).
-feat: Introduce new Strategy method,
get_open_orders().
-feat: Introduce new parameter for Strategy method
open() and
OrderParam
data structure, 'post_only'.
-feat: Introduce new event handler on_shutdown().
-feat: Added support skeleton for Glassnode provider.
2024-03-25
v1.3.9 Cybotrade Update
-bugfix: Running any backtests with coinglass datasource will get capped limit of 4500 data points.
2024-03-21
v1.3.8 Cybotrade Update
-bugfix: Attempting to index into self.data_map with any DataSource topic
will fail.
2024-03-20
v1.3.7 Cybotrade Update
-bugfix: Opening a trade in an opposite direction of the last closed trade after having placed orders will cause Order Pool to not get updated in Backtest, leading to incorrect Position data.
-bugfix: When attempting to call close() on Live, it will fail with error
Attempted to call close() with no position despite having positions.
-feat: Introduces single request per Permutation sets, improving time performance for running Permutations in Backtest.
-feat: Introduces Ping-Pong system to ensure connectivity between DataSource server and Cybotrade when Cybotrade encounters network issues.
2024-03-17
v1.3.6 Cybotrade Update
-bugfix: When starting a Backtest with any cryptoquant data, the
self.data_map will store the data_count set of data in reversed order of
datetime.
-bugfix: When running strategies with Coinglass V3 topics, the data received is hard capped at 1000.
Datasource
-feat: Handles disconnection from Cybotrade by forcibly closing connection when Cybotrade is unresponsive.
2024-03-15
v1.3.5 Cybotrade Update
-
bugfix: Short position TP order when created with
Strategy.open()will always execute on the next candle closed despite not being in range of the candle. -
bugfix:
on_order_updatewill cause the entire strategy to exit when it receives an update from any trading symbol that is not included in thecandle_topicsparameter forRuntimeConfig. -
bugfix: If
format=csvis passed in when calling CryptoQuant topics, it will result in an exit, theformatparameter is now ignored. -
feat:
performance.jsondoes not get produced if the strategy that was ran did not produce any trades. -
feat:
on_active_order_intervalparameter forRuntimeConfigis now based on seconds rather than minutes. -
feat: New
strategyfunctionall_position(). -
feat: New
symbolclass field forPositionmodel.
2024-03-12
v1.3.4 Cybotrade Update
-
bugfix: When retrieving more than 100,000 sets of data for CryptoQuant data, the runtime will be stuck in an infinite loop.
-
bugfix: The second last value in the
self.data_map[topic]for candles duringRuntimeMode.LiveTestnetandRuntimeMode.Liveis off by 1000 counts. -
bugfix: Removed
is_hedge_modeargument fromStrategy.cancel() -
feat: removed redundant logs for
on_active_order_intervalas well ason_order_update
DataSource
- feat: caching after first request, this will improve 'data fetching' time.
Documentation
- feat: Updated Coinglass V1 documentation to Coinglass V3.
2024-03-10
v1.3.3 Cybotrade Update
-
bugfix: The first candle closed received in a backtest is duplicated within the
self.data_map(). -
feat: removed
hedge_modefrom theRuntimeConfigstruct. -
feat: introduced
is_hedge_modeargument forStrategy.open(),Strategy.close()convenience methods, as well as theOrderParamsstruct.
You may notice that
Strategy.cancel()has a function signature that accepts theis_hedge_modeargument, this should be ignored.
-
feat:
Strategy.position()now retrieves position directly from exchange. -
feat: Introduces support for Coinglass V3 topics.
-
feat: Deprecated Coinglass V1 topics.