7 Commits

Author SHA1 Message Date
Jhonathan Abreu 2ddf40b8e9 PEP8 style algorithm API (#7909)
* feat: support snake-case style Python QCAlgorithm implementations

* feat: add unit tests and minor fixes

* feat: implement new BasePythonWrapper class for python wrappers.

Used to cache methods and contains invoke functionality

* feat: make python wrappers implement the new base class for pep8 style support

* feat: keep overriden methods in Algorithm Python Wrapper

* feat: add unit tests for custom models algorithms with PEP8 style

* Bump pythonnet version to 2.0.30

* fix bugs and address peer review

* Address peer review

* Minor revert

* feat: StubsIgnoreAttribute for ignoring members or classes by the stubs generator

* Minor fixes

* Minor fix

* Minor fix

* Bump pythonnet version to 2.0.31

* Added Greeks.Lambda_ alias of Lambda for python compatibility.

Remove unused method
2024-04-12 17:29:15 -03:00
Martin Molinero fa122fa809 Add missing PyObject.Dispose calls
- Adding _some_ of the missing PyObject.Dispose calls. In the cases
where C# is calling the Python side.
   - Note that Python calls to C# code is correctly handling the
   disposure of resources.
2019-04-10 15:03:10 -03:00
Martin Molinero c9e6268cbd Remove OrderFeeParameters.AccountCurrency
- Removing OrderFeeParameters.AccountCurrency. Where required replacing
for constructor parameter defaulting to USD.
- Updating IB fee model to use to correct fee currency
2018-12-28 15:57:53 -03:00
Martin Molinero 0933da9303 Refactor previous commits
- Removing `AccountCurrency` from `Cash` and `Brokerage` classes.
`ICurrencyConverter` will now provide the `AccountCurrency`
- Adding new static `OrderFee.Zero` which will return a 0 order fee in
`NullCurrency`
- Adding static `Currencies.USD` value, replacing all "USD".
- Addin new static `Currencies.NullCurrency`
- Updating Bitfinex `FeeModel` so it return fees in quote currency.
Adding unit tests
2018-12-13 11:30:40 -03:00
Martin Molinero c5daf9ac9a Refactor IFeeModel
- Refactoring `IFeeModel`. *This is a breaking change* for implementations
inheriting directly from the interface. Deleting old and adding a new method
`OrderFee GetOrderFee(OrderFeeParameters parameters)` that will use a parameter
and a result object.
- Refactoring `CashAmount` so it does not embed a `ICurrencyConverter`
instance.
- Updating unit tests
- The `Security.QuoteCurrency`, a `Cash` instance, will provide access
to the `AccountCurrency` as a property.
- Will maintain backwards compatibility with old python custom
FeeModels, Adding unit test.

> Note that for now, consumers will ignore the currency, as before, and
directly consume the amount
2018-12-06 16:20:36 -03:00
AlexCatarino 2ff636869c Fixes summary of members in python wrapper classes
Summary of members in python wrapper classes where pointing to other methods for reference when they should have a meaningful description to be used in documentation
2017-11-16 14:00:22 +00:00
AlexCatarino 9998e65df9 Adds support for custom models for python
Adds support for fee, fill and slippage custom modelling.
Adds CustomModelsAlgorithm to showcase the new feature
Modifies C# version of CustomModelsAlgorithm to match existing data in github
2017-09-28 16:47:58 +01:00