콘텐츠로 이동

TradeWatch Tab Sample

개요

TradeWatch Tab Sample 플러그인은 트레이드 워치에 새 탭을 추가하여 활성 차트의 심벌에 대한 실시간 통계와 거래 작업을 표시합니다. 다음과 같은 주요 기능을 제공합니다:

  • 플러그인을 트레이드 워치의 새 탭으로 자동 추가합니다.
  • 실시간 거래 통계를 표시합니다.
  • 현재 차트 심벌에 대한 시장가 주문 실행을 가능하게 합니다.
  • 활성 차트 심벌이 변경될 때 자동으로 업데이트됩니다.

이 플러그인은 활성 차트를 반영하는 전용 트레이드 워치 탭을 통해 실행됩니다. cTrader Windows 또는 Mac이 실행되는 동안 활성 상태를 유지하며 중지될 때 시스템 리소스를 자동으로 해제합니다.

플러그인 생성

단계별 가이드에서 템플릿 또는 처음부터 플러그인을 생성, 편집 및 빌드하는 방법을 알아보세요.

TradeWatch Tab Sample 플러그인의 코드는 GitHub에서 찾을 수 있으며, 아래에서 간단히 복사할 수도 있습니다.

샘플 코드
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 또는 `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 제어 패널에서 거래 작업이 취해질 때 트리거되는 이벤트. tradecontrolontrade 또는 null
ExecuteMarketOrder 호출 시 거래를 실행합니다. e.tradetype, e.symbolname, e.volume

사용 사례

TradeWatch Tab Sample 플러그인은 실시간 차트 컨텍스트를 거래 실행과 연결하여 cTrader를 향상시키는 간단한 방법을 제공합니다. 거래 워크플로우를 간소화하는 실용적인 애플리케이션을 지원합니다. 아래는 플러그인이 거래 경험을 향상시킬 수 있는 방법을 보여주는 실용적인 사용 사례입니다.

사용 사례 시나리오 가치
심벌 잠금 플러그인 탭을 각 차트 전환에 따라 업데이트되는 대신 항상 EURUSD와 같은 고정 심벌을 표시하도록 설정합니다. 차트 컨텍스트에 관계없이 한 가지 상품을 일관되게 추적하고 거래할 수 있도록 도와줍니다.
차트 연결 거래 패널 플러그인을 활성 차트 심벌과 동기화하여 항상 관련 통계와 거래 옵션을 표시합니다. 도구나 패널을 전환할 필요 없이 차트 분석에 빠르게 대응할 수 있습니다.
고정 거래량 거래 주문 핸들러의 기본 거래량을 고정 또는 선호하는 랏 크기로 조정합니다. 매번 거래량을 조정할 필요가 없어 실행을 간소화합니다.
빠른 액션 터미널 컨트롤을 수평으로 재배치하고 중앙 정렬하여 간소화된 거래 패널을 만듭니다. 컴팩트한 설정에서 통계와 거래 버튼에 더 빠르게 접근할 수 있습니다.

요약

TradeWatch Tab Sample은 실시간 통계와 거래 컨트롤을 트레이드 워치 내의 전용 탭으로 결합하여 거래 워크플로우를 간소화합니다. 활성 차트와 함께 자동으로 업데이트되며, 레이아웃, 심벌 동작 및 거래 설정을 다양한 거래 스타일이나 집중 영역에 맞게 사용자 정의할 수 있습니다.

추가 개발 세부 사항은 플러그인 문서를 참조하세요.