-
Notifications
You must be signed in to change notification settings - Fork 4
FIX: reprice LMT orders n times, then replace with MKT; add new weight verification endpoint #108
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from 17 commits
Commits
Show all changes
25 commits
Select commit
Hold shift + click to select a range
0f78b9b
refactor: remove unnecessary using statements
moconnell 1687a5e
fix(broker): bug where LMT order is already filled yet broker sends a…
moconnell 6a06cc5
chore: update UnravelDaily TradeBuffer -> 0.00025
moconnell 2689868
fix(Trade): IsTradable
moconnell 6271abd
fix(HyperliquidBroker): MKT order without valid LimitPrice rejected
moconnell 9adff79
chore(appsettings.json): update Unravel Schedule, TradeBuffer -> 0.001
moconnell 518d09d
chore: bump deps
moconnell 0ff5819
fix(appsettings.json): default to testnet
moconnell 028681f
fix(settings.json): do not break long XML lines
moconnell 3fd054d
refactor: extract OrderManager
moconnell 60bffdd
refactor(RebalanceCommand): formatting
moconnell ea70003
fix(vscode): task config
moconnell 470723a
fix: various order update subscription bugs
moconnell e329e1a
feat: reprice LMT order n times and then place MKT
moconnell f3ea977
fix: build
moconnell 0f1e57a
test: improve coverage
moconnell cd8338f
test: increase coverage
moconnell c520a91
fix(settings.json): remove .net path from workspace settings
moconnell a9c0c2e
fix(YoloKonsole): DI should register OrderManager
moconnell 6971185
fix(OrderManagerTest): wait until stream is consumed to assert
moconnell 81df924
fix(AddStrategyServicesTest): tighten exception assertion
moconnell c79efff
fix(EffectiveWeightsFunctionBase): handle duplicate input weights exc…
moconnell 8098625
fix(HyperliquidBroker): store subscription disposable and dispose whe…
moconnell 0a76688
fix(OrderManager): validate OrderManagementSettings
moconnell 770af46
fix(YoloConfigExtensions): add more assertions
moconnell File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| namespace YoloAbstractions; | ||
|
|
||
| public sealed record BrokerAccountContext(string? Address, string? VaultAddress); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| namespace YoloAbstractions; | ||
|
|
||
| public record BrokerOrderEvent( | ||
| string ClientOrderId, | ||
| Order Order, | ||
| bool Success, | ||
| string? Error = null, | ||
| int? ErrorCode = null); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| namespace YoloAbstractions.Interfaces; | ||
|
|
||
| public interface ITradeAdvisor | ||
| { | ||
| /// <summary> | ||
| /// Called when a limit order times out. Returns the replacement trade to place (with fresh | ||
| /// prices and positions), or null if the position is already within target (nothing to do). | ||
| /// </summary> | ||
| Task<Trade?> GetReplacementTradeAsync(Trade timedOutTrade, CancellationToken ct = default); | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,12 +1,3 @@ | ||
| namespace YoloAbstractions; | ||
|
|
||
| public record OrderManagementSettings( | ||
| TimeSpan UnfilledOrderTimeout = default, | ||
| bool SwitchToMarketOnTimeout = true, | ||
| TimeSpan StatusCheckInterval = default) | ||
| { | ||
| public static OrderManagementSettings Default => new( | ||
| UnfilledOrderTimeout: TimeSpan.FromMinutes(5), | ||
| SwitchToMarketOnTimeout: true, | ||
| StatusCheckInterval: TimeSpan.FromSeconds(30)); | ||
| } | ||
| public record OrderManagementSettings(TimeSpan UnfilledOrderTimeout, int MaxRepriceRetries); | ||
moconnell marked this conversation as resolved.
Show resolved
Hide resolved
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.