Skip to content

[pull] master from visualHFT:master#7

Merged
pull[bot] merged 65 commits intosyther-labs:masterfrom
visualHFT:master
Jul 15, 2025
Merged

[pull] master from visualHFT:master#7
pull[bot] merged 65 commits intosyther-labs:masterfrom
visualHFT:master

Conversation

@pull
Copy link

@pull pull bot commented Mar 17, 2025

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.1)

Can you help keep this open source service alive? 💖 Please sponsor : )

@pull pull bot added the ⤵️ pull label Mar 17, 2025
Ariel Silahian and others added 26 commits March 18, 2025 15:27
MarketResilience Unit tests added
Removed redundant call to InitializeDefaultSettings().
Now, it is only invoked when _settings is null, improving efficiency by preventing unnecessary initialization.
…f the queue is empty. The existing `Last()` method remains unchanged.

Modified `VisualHFT.sln` to add a new project, `Studies.MarketResilience.Test`, with configuration settings for Debug and Release modes.
Introduce a private `_settings` field in `MarketResilienceTests` to utilize `PlugInSettings` for configuring market resilience calculations. Update instances of `MarketResilienceCalculator` and `MarketResilienceWithBias` to use these settings, and adjust sleep durations in tests for better configurability and alignment with defined shock time differences.
- Changed target framework to `net8.0-windows8.0` for `OxyPlot.Wpf.Shared`, `OxyPlot.Wpf`, and `OxyPlot`.
- Modified `GeneratePackageOnBuild` and `GenerateDocumentationFile` properties to `False` in the `OxyPlot` project.
- Updated `DataPoint` struct to allow modification of `x` and `y` fields with new property setters.
- Introduced static object pools in `RenderingExtensions` to improve performance and reduce memory allocations.
- Added a new `ObjectPool` class for generic object pooling in `OxyPlot.Rendering.Utilities`.
- Updated `VisualHFT.sln` to include `OxyPlot.Wpf.Shared` and `OxyPlot` projects.
- Suppressed method documentation header warnings for improved code clarity.
This commit introduces the `OrderBookSnapshot` class to replace the existing `OrderBook` in multiple files, including `MarketResilienceCalculatorTests`, `MarketResilienceBiasStudy`, and `MarketResilienceStudy`. The new class allows for creating snapshots of the order book state, enhancing functionality and improving performance through object pooling. A static pool for `OrderBookSnapshot` objects has been added to optimize memory management. Event handling and processing logic have been updated to utilize the new snapshot class.
This commit introduces the `OrderBookSnapshot` class to encapsulate order book data, enhancing memory management and performance. Key constants for chart points and trade records have been adjusted, and the UI refresh interval optimized.

Thread safety is improved with dedicated lock objects, while the `CachedCollection` class has been streamlined to remove unnecessary methods. The `HelperCustomQueue` now includes logging for queue utilization, aiding in performance monitoring.

Redundant methods in the `OrderBook` and `OrderBookData` classes have been removed, focusing on direct property assignments. Overall, these changes enhance the maintainability and readability of the codebase, ensuring efficient handling of real-time order book data.
This commit refactors the `Aggregation` method to accept a list of items, enhancing flexibility in data handling. Detailed XML documentation has been added for clarity.

The `AggregatedCollection` class's aggregator function and constructor have been updated accordingly.
Added Cooldown Duration in TriggerAction to control when actions are triggered, ie always, once an hour, once a day. Default is 0, means always

TriggerEngineService
1. Added Channed to queue incoming studies.
2. AddOrUpdateRule & RemoveRule: Add or remove the rules with thread safety
2. RegisterMetric(): methrod used to pass the studies for which condition queue is running.
3. StartBackgroundWorkerAsync(): call this once on the application initialization.
Resolved bug in Trigger condition where action was exectuing before the cooldown period.
silahian and others added 29 commits May 14, 2025 15:36
Added Rest API Form Builder.
2. Added REST API Execute function
3. Added pre-defined template for JSON Body
4. Changed Actions to New UI from List
5. Enabled TriggerEngine Execution
- Updated NuGet package references across multiple projects.
- Changed lists of bids and asks to arrays in `BinancePlugin.cs` and `BitfinexPlugin.cs` for better performance.
- Added new JSON converters for `OrderStatus` and `OrderType` in `BitfinexPlugin.cs` to enhance enum serialization and deserialization.
2. Added Coinbase.Net Nuget Package.
2. Fixed Rule execution if no rule exists and it was being added for first time.
3. Exception in Rule Check Test Case.
2. WebHook Trigger Action was not working. Fixed
3. Added Trigger Action Cooldown Period for BOth Webhook & In-App
4. Updated Tooltips.
5. Updated Message Format for In-App Notification.
Updated ToolTip for Cooldown Time
added important comments and context
more comments
@pull pull bot merged commit 43a9779 into syther-labs:master Jul 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant