跳转至

TradeWatch Tab Sample

概述

TradeWatch Tab Sample 插件在交易看板中添加了一个新选项卡,显示活跃图表中交易品种的实时统计数据和交易操作。 它提供以下关键功能:

  • 自动将插件添加为交易看板中的新选项卡。
  • 显示实时交易统计数据。
  • 为当前图表交易品种启用市价单执行。
  • 当活跃图表交易品种更改时自动更新。

该插件通过专用的交易看板选项卡运行,该选项卡反映活跃图表。 它在 cTrader Windows 或 Mac 运行时保持活动状态,并在停止时自动释放系统资源。

插件创建

了解如何通过我们的分步指南创建、编辑和构建插件,无论是从模板还是从头开始。

您可以在GitHub上找到TradeWatch Tab Sample插件的代码,或直接复制下面的代码。

示例代码
using cAlgo.API;

namespace cAlgo.Plugins
{
    [Plugin(AccessRights = AccessRights.None)]
    public class MyTradeWatchTabSample1 : Plugin
    {
        private SymbolStatsControl _symbolStatsControl;
        private TradeControl _tradeControl;

        protected override void OnStart()
        {
            var tab = TradeWatch.AddTab("Active Chart Symbol Stats");

            var panel = new StackPanel
                {Orientation = Orientation.Vertical, HorizontalAlignment = HorizontalAlignment.Center};

            _symbolStatsControl = new SymbolStatsControl {Margin = 10};
            _tradeControl = new TradeControl {Margin = 10};

            panel.AddChild(_symbolStatsControl);
            panel.AddChild(_tradeControl);

            tab.Child = panel;

            SetSymbolStats();

            _tradeControl.Trade += TradeControlOnTrade;
            ChartManager.ActiveFrameChanged += _ => SetSymbolStats();
        }

        private void TradeControlOnTrade(object sender, TradeEventArgs e)
        {
            ExecuteMarketOrder(e.TradeType, e.SymbolName, e.Volume);
        }

        private void SetSymbolStats()
        {
            if (ChartManager.ActiveFrame is not ChartFrame chartFrame)
                return;

            _tradeControl.Symbol = chartFrame.Symbol;
            _symbolStatsControl.Symbol = chartFrame.Symbol;
        }
    }
}

自定义选项

此插件通过交易看板面板将实时图表上下文与交易执行链接起来。 下表概述了其关键组件及其功能:

参数 描述 可选值
TradeWatch.AddTab 交易看板面板的选项卡配置。 Active chart symbol stats
StackPanel.Orientation 定义 UI 元素的堆叠方向。 Vertical or horizontal
HorizontalAlignment 定义面板在选项卡中的水平对齐方式。 Center, left, right, 等。
SymbolStatsControl.Margin 设置符号统计控件元素周围的边距。 10, 12, 14, 等。
TradeControl.Margin 设置交易控件元素周围的边距。 10, 12, 14, 等。
SymbolStatsControl.Symbol 将符号统计控件元素绑定到特定图表符号。 chartframe.symbol, eurusd, gbpjpy, 等。
TradeControl.Symbol TradeControl 链接到符号以执行交易操作。 chartframe.symbol, eurusd, gbpjpy, 等。
ChartManager.ActiveFrameChanged 当图表框架更改时触发符号统计更新的事件。 _ => setsymbolstats()
TradeControl.Trade 从控制面板执行交易操作时触发的事件。 tradecontrolontradenull
ExecuteMarketOrder 调用时执行交易。 e.tradetype, e.symbolname, e.volume

用例

TradeWatch Tab Sample 插件提供了一种直接的方式,通过将实时图表上下文与交易执行链接来增强 cTrader。 它支持简化交易工作流的实际应用。 以下是展示该插件如何增强交易体验的实际用例。

使用场景 场景
交易品种锁定 将插件选项卡设置为始终显示固定交易品种,如EURUSD,而不是随每次图表切换更新。 帮助您一致地跟踪和交易一种工具,无论图表上下文如何。
图表链接交易面板 保持插件与活动图表交易品种同步,始终显示相关统计数据和交易选项。 让您快速响应图表分析,无需切换工具或面板。
固定交易量交易 将订单处理程序中的默认交易量调整为固定或首选手数。 通过消除每次调整交易量的需求,简化执行过程。
快捷操作终端 水平重新定位控件并居中对齐,形成简化的交易面板。 在紧凑的设置中更快地访问统计数据和交易按钮。

总结

TradeWatch Tab Sample通过将实时统计数据和交易控件结合到交易看板中的专用选项卡中,简化了交易流程。 它会自动更新活动图表,其布局、交易品种行为和交易设置可自定义,以适应不同的交易风格或重点领域。

有关进一步的开发细节,请参阅我们的插件文档