Position

Allows for simulating trades within an indicator.
newTrade(size, price, timestamp)
Creates a new trade object.
Parameters:
size: The size of the trade (number of shares or contracts).
price: The price at which the trade took place.
timestamp: The timestamp of the trade. Defaults to the current time.
Returns: A new trade object.
start(size, price, timestamp)
Starts a new position.
Parameters:
size: The size of the position (number of shares or contracts).
price: The price at which the position was started.
timestamp: The timestamp of the start of the position. Defaults to the current time.
Returns: A new position object.
trade(pos, size, price, timestamp)
Modifies an existing position.
Parameters:
pos: The position to be modified.
size: The size of the trade (number of shares or contracts).
price: The price at which the trade took place.
timestamp: The timestamp of the trade. Defaults to the current time.
Returns: The modified position object.
exit(pos, price, timestamp)
Closes a position by trading the entire position size at a given price and timestamp.
Parameters:
pos: The position being closed.
price: The price at which the position is being closed.
timestamp: The timestamp of the trade, defaults to the current time.
Returns: The updated position after the trade.
unrealized(pos, price)
Calculates the unrealized gain or loss for a given position and price.
Parameters:
pos: The position for which to calculate unrealized gain/loss.
price: The current market price.
Returns: The calculated unrealized gain or loss.
Trade
Represents a single trade.
Fields:
size: Size of the trade in units.
price: Price of the trade in currency.
value: Total value of the trade in currency units.
time: Timestamp of the trade.
Position
Represents a single position.
Fields:
size: Size of the position in units.
price: Average price of the position in currency.
value: Total value of the position in currency units.
start: Timestamp of the first trade that opened the position.
net: Realized gains and losses of the position in currency units.
history: Array of trades that make up the position.
Added:
size(pos)
Returns the number of shares held by a position.
Parameters:
pos: The position for which to read the size. A value of NA will return zero.
isActive(pos)
Returns true if the position has shares.
Parameters:
pos: The position for which to read the size. A value of NA will return false.
Added:
state(pos)
Returns the current state of the position.
Parameters:
pos: The position to read the state from.
DirectionState
The state of a position in one direction
Fields:
change: The change in shares
holding: Indicates whether a position is currently being held
increased: Indicates whether the position has increased
decreased: Indicates whether the position has decreased
State
The bi-directional state of a position
Fields:
holding: Indicates whether a position is currently being held
change
long: The state of the long position
short: The state of the short position
Updated:
state(pos)
Returns the current state of the position.
Parameters:
pos: The position to read the size from.
Added:
addLabel(pos, ts)
Creates a lablel if a trade was made.
Parameters:
pos: The position.
ts: The state of the position or result of the trade to generate a label from.
Returns: The label that was generated or na if none.
Updated:
start()
Starts a new (blank) position with no trades.
Returns: A new position object.
trade(pos, size, price, timestamp)
Modifies an existing position.
Parameters:
pos: The position to be modified.
size: The size of the trade (number of shares or contracts).
price: The price at which the trade took place.
timestamp: The timestamp of the trade. Defaults to the current time.
Returns: The result of the trade. (The state of the position.)
Position
Represents a single position.
Fields:
size: The size of the position.
price: Average price of the position in currency.
value: Total value of the position in currency units.
start: Timestamp of the first trade that opened the position.
net: Realized gains and losses of the position in currency units.
history: Array of trades that make up the position.
DirectionState
The state of a position in one direction
Fields:
size: The size of the position
change: The change in size
holding: Indicates whether a position is currently being held
increased: Indicates whether the position has increased
decreased: Indicates whether the position has decreased
State
The bi-directional state of a position
Fields:
size
change
holding: Indicates whether a position is currently being held
long: The state of the long position
short: The state of the short position
price
Libreria Pine
In pieno spirito TradingView, l'autore ha pubblicato questo codice Pine come libreria open-source in modo che altri programmatori Pine della nostra comunità possano riutilizzarlo. Complimenti all'autore! È possibile utilizzare questa libreria privatamente o in altre pubblicazioni open-source, ma il riutilizzo di questo codice in una pubblicazione è regolato dal nostro Regolamento.
Declinazione di responsabilità
Libreria Pine
In pieno spirito TradingView, l'autore ha pubblicato questo codice Pine come libreria open-source in modo che altri programmatori Pine della nostra comunità possano riutilizzarlo. Complimenti all'autore! È possibile utilizzare questa libreria privatamente o in altre pubblicazioni open-source, ma il riutilizzo di questo codice in una pubblicazione è regolato dal nostro Regolamento.