Skip to content

Releases: uberdeveloper/omspy

v0.20.0

05 Dec 21:23

Choose a tag to compare

0.20.0 [320/475]

Breaking Changes

  • Pydantic 2.x upgrade - Major compatibility upgrade with breaking changes
  • Migrated from deprecated @validator to @field_validator decorators * Updated Config classes to model_config with ConfigDict
  • Replaced .dict() method calls with .model_dump() throughout codebase * Changed JSON field type to Dict[str, Any] for better type safety
  • Updated order_id field to string type for consistency across models
  • Removed deprecated __fields__ and underscore_attrs_are_private attributes
  • Updated default OrderLock PrivateAttr initialization

Features

  • Full Pydantic v2 compatibility with enhanced validation capabilities
  • Improved type hints with Dict instead of defaultdict imports
  • Enhanced error handling with ValueError instead of TypeError in custom validators
  • Better support for Optional fields with default None values
  • Updated breeze-connect dependency version for Pydantic 2.x compatibility

Improvements

  • arbitrary_types_allowed=True added to ConfigDict for pendulum DateTime compatibility
  • Fixed validator method signatures for Pydantic v2 strict validation
  • Enhanced model configuration with modern Pydantic patterns
  • All 149 simulation tests passing with zero warnings
  • Maintained full backward compatibility while upgrading to Pydantic v2

Fixes

  • Eliminated all pydantic_core._pydantic_core.ValidationError across entire codebase
  • Fixed validation errors in order management, multi-user system, candlestick models, and straddle algorithms
  • Updated all model definitions, test files, and deprecated method calls
  • Fixed Optional field validation with proper default values

What's Changed

New Contributors

Full Changelog: v0.18.0...v0.20.0

v0.19.0

09 Dec 13:52

Choose a tag to compare

0.19.0

Breaking Changes

  • Kotak broker removed. Deprecated code available at omspy-brokers

Features

  • New algo for trailing added in algos/trailing
  • New broker Noren added

Improvements

  • FakeBroker return formats improved. See #42
  • All brokers must return orders as empty list if no orders are found (instead of a dictionary inside list or other format)

Fixes

  • exch_tm error fixed for Finvasia broker #46.
  • ReplicaBroker not to raise error if instruments not available #41.

Full Changelog: v0.18.0...v0.19.0

v0.18.0

16 Nov 19:37

Choose a tag to compare

0.18.0

Features

  • STOP order simulation added to OrderFill #40
  • utils.load_broker to automatically load broker from credentials file

Improvements

  • finvasia broker upgraded to Norenapi version 0.3
  • #38 All brokers to be initialized to None
  • #39 All broker connections to be done only during authentication
  • extra attribute added to yaml files for all brokers
  • pytop library added to main dependency

Fixes

  • orders property for all brokers to return empty list in case of errors (no empty dictionary inside list)
  • Neo broker orders property to infer side automatically
  • Icici broker proper data conversion for orders
  • #35 when both random numbers are same, the end number is changed automatically to prevent raising error

Full Changelog: v0.17.0...v.18.0

Patch for zerodha headless mode

07 Nov 04:19

Choose a tag to compare

Patch for zerodha headless mode

Full Changelog: v0.16.0...v0.17.1

Better support for newer python versions

07 Nov 03:51

Choose a tag to compare

Replica Broker release

30 Aug 16:49

Choose a tag to compare

A new class ReplicaBroker added to virtual brokers.

Primary purpose of this class is to mimic real trading by simulating order fills based on real data from broker

Neo Broker

04 Aug 10:57

Choose a tag to compare

New Neo broker added

VirtualBroker module and typing improvements

25 Mar 17:46

Choose a tag to compare

0.14.0

Improvements to the VirtualBroker module

Features

Following features added to VirtualBroker

  • VirtualBroker methods to match FakeBroker methods
  • Users added, orders can be placed and managed based on user
  • Order status could be fetched based on Status
  • delay attribute added to broker
  • Ticker model improved with ohlc and orderbook methods

Improvements

  • iterate_method made generic
  • Ticker model now moved to models

v0.13.0

11 Mar 16:44

Choose a tag to compare

0.13.0

  • New FakeBroker class added to simulation
  • API added for generating fake data in omspy.simulation.server

New simulation module added

11 Feb 16:59

Choose a tag to compare

0.12.0

Features

  • New simulation module added
  • VirtualBroker added for faking orders
  • You can now add keys to CompoundOrder when adding an order
  • CompoundOrder orders now have an automatic index
  • get function added to CompoundOrder to search by index or custom key
  • update_quantity function added to utils