You need to enable JavaScript in order to visit our site!
 
Logo PTMC
NAVIGATION
CANCEL
 
or via PTMC account
Restore password
or via PTMC account
Logo PTMC
NAVIGATION
or via PTMC account
Restore password
or via PTMC account
or via PTMC account
Restore password
or via PTMC account

GetClosedPositionById (string positionId)

method
Returns a closed before Position that represents a access to position objects specified by position ID.

Syntax

public Position GetClosedPositionById (string positionId)

Parameters

positionId — string
Positions ID.

Return

Position An object that represents Position.

Example

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using PTLRuntime.NETScript;

namespace PositionCollection_
{
    public class PositionCollection_:NETStrategy
    {
        Instrument instr;
        Account acc;
        NewOrderRequest request;
        Position lastPosByOrder;
        
        string ordID = "-1", posID;

        public override void Init()
        {
            instr = Instruments.Current;
            acc = Accounts.Current;

            Instruments.Subscribe(instr, QuoteTypes.Quote);
        }

        public override void OnQuote()
        {
            if (ordID == "-1")
            {
                request = new NewOrderRequest //создём новый запрос на торговый приказ.
                {
                    Instrument = instr,
                    Account = acc,
                    Side = Operation.Buy,
                    Type = OrdersType.Market,
                    Price = instr.LastQuote.Ask,
                    Amount = 1,
                    TimeInForce = TimeInForce.GTC,
                    MarketRange = 1000,
                };

                ordID = Orders.Send(request);

                if (ordID == "-1")
                {
                    Alert("Order was't open, error: " + GetLastError());
                    return;
                }
                else
                {
                    lastPosByOrder = Positions.GetPositionByOpenOrderId(ordID);
                    posID = lastPosByOrder.Id;
                    Alert("Order set on price: " + lastPosByOrder.OpenPrice);
                }
            }
        }


        public override void Complete()
        {

            bool closeByAcc = Positions.CloseAllByAccount(acc);

            lastPos = Positions.GetClosedPositionById(posID);

            Instruments.Unsubscribe(instr, QuoteTypes.Quote);
        }
    }
}
Discussion
Join PTMC community to post your comments
No comments yet. Be the first.
PTMC is a professional trading platform that combines all the best charting and analytical tools to trade on different financial markets. It is developed by PFSOFT UK LTD, a global provider of trading technology for banks & brokers
© 2017. PTMC is based on Protrader technology
Head office
PFSOFT UK LTD
20 Centenary Avenue
South Shields, Tyne and Wear,
NE34 6QH
United Kingdom
Ukraine office
TOV PTMC
26, Naberezhna str., Dnipro,
Dnipropetrovs'k region,
Ukraine
Contact us
Phone: +380 56 740 31 01
E-mail: info@protrader.org
Skype: PTMC_support
Social groups