Skip to content

Positions

Summary

Provides access to methods of the positions collection.

Signature

1
public abstract interface Positions

Namespace

cAlgo.API

Examples

1
 int totalPositions = Positions.Count;
1
 Position position =  Positions.Find("myLabel", Symbol, TradeType.Buy);
1
 Position[] positions = Positions.FindAll("myLabel", Symbol, TradeType.Buy);
1
 Positions.Opened += PositionsOnOpened;

See Also

Methods

Find (5)

Find (1 of 5)

Summary

Find a position by its label.

Signature

1
public abstract Position Find(string label)

Parameters

Name Type Description
label string Label to search by

Return Value

Position

Examples

1
 var position = Positions.Find("myLabel");

Find (2 of 5)

Summary

Find a position by its label and symbol name.

Signature

1
public abstract Position Find(string label, string symbolName)

Parameters

Name Type Description
label string Label to search by
symbolName string Symbol name to search by

Return Value

Position

Examples

1
 var position = Positions.Find("myLabel", "EURUSD");

Find (3 of 5)

Summary

Find a position by its label, symbol name and trade type

Signature

1
public abstract Position Find(string label, string symbolName, TradeType tradeType)

Parameters

Name Type Description
label string Label to search by
symbolName string Symbol name to search by
tradeType TradeType Trade type to search by

Return Value

Position

Examples

1
 var position = Positions.Find("myLabel", "EURUSD", TradeType.Buy);

Find (4 of 5)

Summary

Find all positions with this label.

Signature

1
public abstract Position Find(string label, Symbol symbol)

Parameters

Name Type Description
label string Label to search by
symbol Symbol

Return Value

Position

Examples

1
2
3
4
5
6
 var positions = Positions.FindAll("myLabel");
 foreach (var position in positions)
 {
     double? newStopLoss = position.StopLoss ?? 10;
     ModifyPosition(position, newStopLoss, position.TakeProfit);
 }

Find (5 of 5)

Summary

Find all positions with this label and symbol name.

Signature

1
public abstract Position Find(string label, Symbol symbol, TradeType tradeType)

Parameters

Name Type Description
label string Label to search by
symbol Symbol
tradeType TradeType

Return Value

Position

Examples

1
2
3
4
5
6
 var positions = Positions.FindAll("myLabel", "EURUSD");
 foreach (var position in positions)
 {
     double? newStopLoss = position.StopLoss ?? 10;
     ModifyPosition(position, newStopLoss, position.TakeProfit);
 }

FindAll (5)

FindAll (1 of 5)

Summary

Find all positions with this label.

Signature

1
public abstract Position[] FindAll(string label)

Parameters

Name Type Description
label string Label to search by

Return Value

Position[]

Examples

1
2
3
4
5
6
 var positions = Positions.FindAll("myLabel");
 foreach (var position in positions)
 {
     double? newStopLoss = position.StopLoss ?? 10;
     ModifyPosition(position, newStopLoss, position.TakeProfit);
 }

FindAll (2 of 5)

Summary

Find all positions with this label and symbol name.

Signature

1
public abstract Position[] FindAll(string label, string symbolName)

Parameters

Name Type Description
label string Label to search by
symbolName string Symbol name to search by

Return Value

Position[]

Examples

1
2
3
4
5
6
 var positions = Positions.FindAll("myLabel", "EURUSD");
 foreach (var position in positions)
 {
     double? newStopLoss = position.StopLoss ?? 10;
     ModifyPosition(position, newStopLoss, position.TakeProfit);
 }

FindAll (3 of 5)

Summary

Finds all the positions of this label, symbol name and trade type.

Signature

1
public abstract Position[] FindAll(string label, string symbolName, TradeType tradeType)

Parameters

Name Type Description
label string Label to search by
symbolName string Symbol name to search by
tradeType TradeType Trade type to search by

Return Value

Position[]

Examples

1
2
3
4
5
6
 var positions = Positions.FindAll("myLabel", "EURUSD", TradeType.Buy);
 foreach (var position in positions)
 {
     double? newStopLoss = position.StopLoss ?? 10;
     ModifyPosition(position, newStopLoss, position.TakeProfit);
 }

FindAll (4 of 5)

Signature

1
public abstract Position[] FindAll(string label, Symbol symbol)

Parameters

Name Type Description
label string
symbol Symbol

Return Value

Position[]

FindAll (5 of 5)

Signature

1
public abstract Position[] FindAll(string label, Symbol symbol, TradeType tradeType)

Parameters

Name Type Description
label string
symbol Symbol
tradeType TradeType

Return Value

Position[]

Properties

Item

Signature

1
public abstract Position Item {get;}

Return Value

Position

Count

Summary

The total number of open positions.

Signature

1
public abstract int Count {get;}

Return Value

int

Examples

1
 int totalPositions = Positions.Count;

Events

Closed

Summary

Occurs each time a position is closed.

Signature

1
public abstract event Action<PositionClosedEventArgs> Closed;

Examples

1
2
3
4
5
6
7
8
9
 protected override void OnStart()
  {
      Positions.Closed += PositionsOnClosed;
  }
  private void PositionsOnClosed(PositionClosedEventArgs args)
  {
      var position = args.Position;
      Print("Position closed with {0} profit", position.GrossProfit);
  }

Opened

Summary

Occurs each time a position is opened.

Signature

1
public abstract event Action<PositionOpenedEventArgs> Opened;

Examples

1
2
3
4
5
6
7
8
 protected override void OnStart()
  {
      Positions.Opened += PositionsOnOpened;
  }
  private void PositionsOnOpened(PositionOpenedEventArgs args)
  {
      Print("Position opened {0}", args.Position.Label);
  }

Modified

Summary

Occurs each time a position is modified.

Signature

1
public abstract event Action<PositionModifiedEventArgs> Modified;