Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implement TradeStation API (new Lean Plugin) (#1)
* remove: template ref to another project * rename: templateBrokerage to TradeStationBrokerage * refactor: templates proj toTradStation ones * rename: template to TradeStationBrokerage feat: add ref lean test * fix: encoding of csproj * feat: getSignUrl on 0Auth * feat: AccessToken and RefreshToken 0Auth * feat: getAccount to get balance per each * refactor: RefreshAccessToken in ApiClient * feat: GetAllAccountBalances * feat: IBrokerage => GetCashBalance * refactor: pull out of TradeSationError struct * feat: IBrokerage => GetAccountHoldings * feat: support of prxoy for TradeStationApiClient * refactor: additional tests * feat: xml description to several variables * feat: RetrieveOrdersForAllAccount * test:fix: template constructor * refactor: TradeStationOrder several properties * refactor: new description several order status * feat: TradeStationSymbolMapper GetLeanSymbol() * feat: IBrokerage -> GetOpenOrders feat: convert extensions * refactor: TSApi requested uri * feat:todo: Symbol in GetAccountHolding * feat: IBrokerage -> CancelOrder * feat: caching account request * feat: collection of supported security types * feat: GetBrokerageSymbol + test * feat: PlaceOrder * feat: SerializeSetting in ApiClient * feat: IBrokerage -> UpdateOrder * feat: param of prxoy in brokerage class * feat: update RestSharp version refactor: update code base to new -v RestSharp * rename: TemplateBrokerage to TradeStation * remove: TradeStationExchangeInfoDownloader * remove: TradeStationExchangeInfoDownloader from Program * revert: use new version of RestSharp * refactor: RestSharp to HttpClient * remove: extra custom converter * remove: not used part of code * feat: handle order event * refactor: brokerage connection process * remove: not used code * remove: not used code * feat: wrap subscribe order event in while * feat: ValidateSubscription() * remove: repeat securityType in collection * feat: use future code from Lean * feat: add Trade Station Account Type in config * missed: ref proj on Lean.Common in solution * feat: description in API RequestAsync * fix: missed init of global test params * fix: GetAccountHoldings() for different account feat: parsing option symbol in poistion + test * refactor: deserialize wrong http response * refactor: Quantity in GetAccountHoldings * feat: support TradeStationOrderProperty feat: rejected message in handleOrderEvent feat: different position side for Option orders * feat: pass OrderProperty in PlaceOrder() * feat: pull out redirect url in config file * remove: not used test * feat: TradeStationBrokerageFactory * feat: github action * fix: autorization header * feat: LookupSymbols * feat: getQuote() * refactor: placeOrder * feat: handle error of an existing position. * rename: TradeStationOrderResponse entity * feat: implement Brokerage CrossZero logic * fix: holding quantity sign * refactor: PlaceOrder depend on holding quantity feat: use DirectionOfOrder in PlaceOrder feat: try take order again if it was cross fix: orderEvent quantity sign feat: use TryHandleEvent of CrossZeroOrder feat: clean cached of second part of CrossZeroOrder fix: stop price of StopLimitOrder in Test feat: increase delay of placiing order when crossing (because TradeStationBrokerage has delay) * feat: ConcurrentMessagveHandler of Order Events feat: lock Place/Update Order refactor: UpdateTradeStationOrder feat: vlidate specific tradestation error codesa feat: temp cache for quantity feat: util to validate right side of order's brokerage feat: implement TryGetOrRemoveCrossZeroOrder fix: test input data * remove: temp cache ofr order Quantity refactor: UpdateOrder feat: handle case of OrderStatus feat:test: new tests parameters * feat: Validate of CorssZeroOrder in UpdateOrder fix: use wrong OrderStatus for canceled order feat: write specific test case to update order * refactor: UpdateCrossZeroOrder take specific quantity refactor: ReplaceOrder API endpoint * feat: use accountID preload process refactor: use leanOrder status internally fix: comment in tests remove: attribute explicit in several tests * feat: TradeStation ActionType to enum instead of string carry_out: OptionStrire model to models folder refactor: IsShort and Direction to extension and carry out from main class feat: desirialize ActionType string to enum with diifferent case * refactor: get rid getStop/Limit price by LenaOrder * remove: duplication code of PlaceOrder in TradeStation API * fix: github workflow file * fix: type param in entity feat: Option test cases * feat: add TradeStation.json * feat: test cases fro SecurityType.Future fix: Convert OrderDirection of TradeStation on SecurityType.Future * feat: additional property in TradeStation Factory * refactor: CrossZeroOrder implementation * feat: Add Lean.Common project in sln * remove: PROXY implementation * refactor: Convert OrderDirection extension * refactor: AccountId and AccountType feat: extension parse AccountType * refactor: change access modifier of GetQuote() * refactor: use error generic interface for error * remove: IDataQueueUniverseProvider * remove: duplication of code PlaceOrder * remove: extra proxy * remove: hardcoded orders error codes * feat: increase AutoResetEvent wait handle time * fix: log parameters * feat: use _isSubscribeOnStreamOrderUpdate flag explicitly * feat: additional log on subscribe on order updates feat: cancellation token for subscribe on order updates refactor: description on method * feat: add missed support asset in json config * feat: explicit attribute for SecurityType.Future tests remove: not used using`
- Loading branch information