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

GetPositionById (string positionId)

method
Gets a Position that represents a access to position objects specifiedby by position ID. If position does not exist, return null.

Syntax

public Position GetPositionById (string positionId)

Parameters

positionId — string
Positions ID.

Return

Position An object that represents Position.

Example


 В следующем примере кода показано как можно использовать функцию GetPositionById().
 
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, lastPos;
        
        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);
                }
            }

            lastPos = Positions.GetPositionById(posID);
        }


        public override void Complete()
        {

            bool closeByAcc = Positions.CloseAllByAccount(acc);

            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
PFSOFT UK LTD
71-75, Shelton Street,
Covent Garden,
London, WC2H9SQ,
United Kingdom
Support & Development
PFSOFT Ukraine
Office #701
Mechnikova Street, 10B
49000, Dnipro, Ukraine
Contact us
Phone: +380 56 740 30 01
E-mail: info@protrader.org
Skype: PTMC_support
Find more ways to contact
Join us in social networks