콘텐츠로 이동

Custom Window Plugin

개요

Custom Window Plugin은 다음과 같은 주요 기능을 통해 사용자 입력에 기반한 작업을 트리거하기 위한 간단한 인터페이스를 cTrader에 생성합니다:

  • 거래 작업 공간과 함께 사용자 정의 시각적 구성 요소를 표시하기 위해 cTrader 플랫폼 내에 창 인터페이스를 구축합니다.
  • 사용자가 수동으로 작업을 시작할 수 있도록 상호 작용을 위한 버튼을 추가합니다.
  • 버튼 클릭 시 사전 정의된 로직을 트리거하여 거래 작업의 일관된 처리를 가능하게 합니다.
  • 설정된 조건에 따라 오픈 포지션을 업데이트하여 특정 기준이 충족될 때만 변경 사항을 적용합니다.

이 플러그인은 모든 오픈 포지션에 대해 특정 작업을 수행할 수 있는 창을 추가합니다. 이를 통해 각 포지션을 개별적으로 변경할 필요 없이 모든 포지션에 동일한 규칙을 한 번에 적용할 수 있어 수동 거래에 도움이 됩니다.

플러그인 생성

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

Custom Window Plugin의 코드는 GitHub에서 찾을 수 있으며, 아래에서 간단히 복사할 수도 있습니다.

샘플 코드
using System;
using cAlgo.API;
using cAlgo.API.Collections;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;

namespace cAlgo.Plugins
{
    [Plugin(AccessRights = AccessRights.None)]
    public class CustomWindowPlugin : Plugin
    {
        private Button _buttonAddTakeProfit;
        private Window _window;

        protected override void OnStart()
        {
            _buttonAddTakeProfit = new Button
            {
                BackgroundColor = Color.SeaGreen,
                Height = 50,
                Text = "Add Take Profit"
            };

            _buttonAddTakeProfit.Click += _buttonAddTakeProfit_Click;

            _window = new Window
            {
                Height = 150,
                Width = 150,
                Padding = new Thickness(5, 10, 10, 5)
            };

            _window.Child = _buttonAddTakeProfit;
            _window.Show();
        }

        private void _buttonAddTakeProfit_Click(ButtonClickEventArgs args)
        {
            foreach (var position in Positions)
            {
                if (position.TakeProfit is null)
                {
                    position.ModifyTakeProfitPips(20);
                }
            }
        }        

        protected override void OnStop()
        {
            // Handle Plugin stop here
        }
    }        
}

사용자 지정 옵션

매개변수 설명 가능한 값
_buttonAddTakeProfit.Text 버튼에 표시되는 텍스트 라벨을 설정합니다. Add take profit
_buttonAddTakeProfit.Height 창에서 버튼의 높이를 지정합니다. 50, 60, 65, 등.
_buttonAddTakeProfit.BackgroundColor 버튼의 배경색을 설정합니다. color.seagreen
_buttonAddTakeProfit.Click 버튼이 클릭될 때 이벤트를 트리거합니다. _buttonaddtakeprofit_click
_window.Height 창의 높이를 설정합니다. 150, 200, 220, 등.
_window.Width 창의 너비를 설정합니다. 150, 200, 220, 등.
_window.Padding 창 내부의 자식 콘텐츠 주변 공간을 정의합니다. (5, 10, 10, 5), (8, 12, 12, 8), 등.
_window.Child 창 내부의 콘텐츠로 버튼을 할당합니다. _buttonaddtakeprofit
position.TakeProfit 포지션에 이미 이익실현이 설정되어 있는지 확인합니다. null
position.ModifyTakeProfitPips 고정 핍 값으로 설정하여 이익실현을 수정합니다. 20, 24, 26, 등.

사용 사례

사용 사례 시나리오 가치
벌크 이익실현 설정기 이익실현이 설정되지 않은 여러 개의 오픈 포지션이 있습니다. 20핍의 이익실현 수준을 추가하는 반복적인 작업을 자동화합니다.
반응형 거래 관리자 시장이 빠르게 움직이고 즉시 이익을 보호해야 합니다. 한 번의 클릭으로 여러 포지션에 이익실현을 적용합니다.
벌크 손절매 설정기 오픈 포지션에 20핍의 손절매를 빠르게 적용하고 싶습니다. 각 거래를 개별적으로 편집하지 않고 일관된 위험 통제를 설정합니다.

요약

Custom Window Plugin은 이익실현이 설정되지 않은 모든 오픈 포지션에 20핍의 이익실현 수준을 빠르게 적용할 수 있게 하여 수동 거래를 향상시킵니다. 단일 액션 버튼이 있는 간단한 플로팅 인터페이스를 통해 거래 관리에 속도와 일관성을 제공합니다.

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