Skip to content

Dynamic position block - #23

Merged
de-don merged 16 commits into
mainfrom
dynamic-position-block
Jan 2, 2026
Merged

Dynamic position block#23
de-don merged 16 commits into
mainfrom
dynamic-position-block

Conversation

@de-don

@de-don de-don commented Jan 2, 2026

Copy link
Copy Markdown
Owner

No description provided.

Copilot AI review requested due to automatic review settings January 2, 2026 08:26

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements a "Dynamic position block" feature that automatically adjusts position limits based on open deals, along with comprehensive theming support (light/dark mode) and several UI/UX improvements.

Key Changes:

  • New dynamic position blocking system with automatic limit adjustments
  • Dark/light theme support throughout the application with CSS variables
  • Refactored deals refresh interval to be globally configurable
  • Enhanced active deals tracking with executed orders history
  • Bulk bot editing functionality
  • Centralized URL building with multi-origin support

Reviewed changes

Copilot reviewed 60 out of 60 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
extension/ui/src/types/positionConstraints.ts New type definitions for position constraints and dynamic block configuration
extension/ui/src/storage/themePreferences.ts Theme mode persistence utilities
extension/ui/src/storage/dynamicPositionBlocksStore.ts IndexedDB storage for dynamic block configurations with validation
extension/ui/src/storage/dealsRefreshStore.ts Centralized deals refresh interval storage
extension/ui/src/storage/activeDealsHistoryStore.ts Enhanced history storage with executed orders tracking
extension/ui/src/services/positionConstraints.ts Service layer for position constraints API
extension/ui/src/services/backtestInfos.ts Added max duration calculation
extension/ui/src/pages/DynamicBlocksPage.tsx New page for dynamic position block management
extension/ui/src/pages/SettingsPage.tsx Added deals refresh interval settings
extension/ui/src/pages/ActiveDealsPage.tsx Enhanced with algorithm filter and history compression
extension/ui/src/lib/chartOptions.ts Added theme mode support for all chart types
extension/ui/src/lib/cabinetUrls.ts Centralized URL building with multi-origin support
extension/ui/src/lib/botUpdatePayload.ts Bot update payload builder with deep cloning
extension/ui/src/lib/activeDealsHistory.ts Executed orders tracking and history compression
extension/ui/src/context/ThemeContext.tsx Theme mode context provider
extension/ui/src/context/DynamicBlocksContext.tsx Dynamic blocks feature state management
extension/ui/src/context/DealsRefreshContext.tsx Global deals refresh interval context
extension/ui/src/context/ActiveDealsContext.tsx Enhanced with executed orders and compression
extension/ui/src/components/bots/BulkEditBotsModal.tsx New bulk edit modal for updating bot parameters
extension/ui/src/components/charts/*.tsx Theme mode integration for all chart components
extension/ui/src/api/constraints.ts API client for position constraints
extension/ui/src/styles.css Comprehensive CSS variable refactoring for theming
extension/ui/src/App.tsx Theme provider integration and routing updates

The changes are well-structured, follow established patterns, and include proper error handling and validation. The feature is comprehensive with proper UI, storage, and automation logic.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

bot.symbols.forEach((symbol) => {
const trimmed = symbol.trim();
if (trimmed) {
const [base, quote] = trimmed.split('/');

Copilot AI Jan 2, 2026

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unused variable quote.

Suggested change
const [base, quote] = trimmed.split('/');
const [base] = trimmed.split('/');

Copilot uses AI. Check for mistakes.
@de-don
de-don force-pushed the dynamic-position-block branch from 1d8762d to ab6cd41 Compare January 2, 2026 08:35
@de-don
de-don merged commit f903823 into main Jan 2, 2026
4 checks passed
@de-don

de-don commented Jan 2, 2026

Copy link
Copy Markdown
Owner Author

🎉 This PR is included in version 2.2.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

@de-don de-don added the released label Jan 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants