PineForge unreleased
Deterministic PineScript v6 backtest runtime — C ABI reference
Loading...
Searching...
No Matches
pineforge::engine_script_run_v19::TradeLedger Class Reference

#include <trade_ledger.hpp>

Data Structures

class  const_iterator
 

Public Types

using size_type = std::size_t
 
using value_type = Trade
 
using Visitor = std::function<bool(size_type, const Trade&)>
 
using iterator = const_iterator
 

Public Member Functions

 TradeLedger ()
 
 ~TradeLedger ()
 
 TradeLedger (const TradeLedger &)
 
TradeLedger & operator= (const TradeLedger &)
 
 TradeLedger (TradeLedger &&)
 
TradeLedger & operator= (TradeLedger &&)
 
void set_scratch_directory (const std::string &)
 
const std::string & scratch_directory () const
 
void set_cache_rows (size_type rows)
 
size_type cache_rows () const
 
size_type cache_resident_bytes () const
 
size_type cache_size () const
 
void clear ()
 
void reserve (size_type)
 
size_type size () const
 
size_type base () const
 
size_type resident_size () const
 
size_type resident_base () const
 
bool empty () const
 
Trade read (size_type global) const
 
Trade operator[] (size_type global) const
 
Trade at (size_type global) const
 
Trade back () const
 
Trade numeric_at (size_type global) const
 
std::string entry_id_at (size_type global) const
 
double pnl_at (size_type global) const
 
double pnl_pct_at (size_type global) const
 
double commission_at (size_type global) const
 
std::int32_t entry_bar_index_at (size_type global) const
 
std::int32_t exit_bar_index_at (size_type global) const
 
std::uint64_t entry_incarnation_at (size_type global) const
 
double entry_price_at (size_type global) const
 
double exit_price_at (size_type global) const
 
std::int64_t entry_time_at (size_type global) const
 
std::int64_t exit_time_at (size_type global) const
 
double qty_at (size_type global) const
 
double max_runup_at (size_type global) const
 
double max_drawdown_at (size_type global) const
 
bool is_long_at (size_type global) const
 
std::string entry_comment_at (size_type global) const
 
std::string exit_comment_at (size_type global) const
 
std::string exit_id_at (size_type global) const
 
void replace (size_type global, const Trade &)
 
void modify (size_type global, const std::function< void(Trade &)> &)
 
void push_back (const Trade &trade)
 Append at the logical global end (3.4:613-616).
 
void push_back (Trade &&trade)
 
void resize (size_type global_end)
 
const_iterator begin () const
 
const_iterator end () const
 
void visit (size_type first, size_type end, const Visitor &) const
 
bool previous (size_type &cursor, Trade &value) const
 
const Trade & materialize (size_type global) const
 
void seal (size_type global_end)
 

Static Public Member Functions

static size_type resident_cache_bytes (size_type rows)
 

Static Public Attributes

static constexpr size_type kRecordBytes = 168
 
static constexpr size_type kResidentRows = 64
 
static constexpr size_type kCacheStringBytes = 128
 
static constexpr size_type kLedgerEntryBytes
 
static constexpr size_type kDefaultCacheRows = 65536
 
static constexpr size_type kMaxCacheRows = 1048576
 
static constexpr size_type kSinkCacheRows = 128
 

Detailed Description

Definition at line 30 of file trade_ledger.hpp.

Member Typedef Documentation

◆ size_type

Definition at line 32 of file trade_ledger.hpp.

◆ value_type

◆ Visitor

Definition at line 53 of file trade_ledger.hpp.

◆ iterator

Constructor & Destructor Documentation

◆ TradeLedger() [1/3]

pineforge::engine_script_run_v19::TradeLedger::TradeLedger ( )

◆ ~TradeLedger()

pineforge::engine_script_run_v19::TradeLedger::~TradeLedger ( )

◆ TradeLedger() [2/3]

pineforge::engine_script_run_v19::TradeLedger::TradeLedger ( const TradeLedger & )

References TradeLedger().

◆ TradeLedger() [3/3]

pineforge::engine_script_run_v19::TradeLedger::TradeLedger ( TradeLedger && )

References TradeLedger().

Member Function Documentation

◆ operator=() [1/2]

TradeLedger & pineforge::engine_script_run_v19::TradeLedger::operator= ( const TradeLedger & )

References TradeLedger().

◆ operator=() [2/2]

TradeLedger & pineforge::engine_script_run_v19::TradeLedger::operator= ( TradeLedger && )

References TradeLedger().

◆ set_scratch_directory()

void pineforge::engine_script_run_v19::TradeLedger::set_scratch_directory ( const std::string & )

◆ scratch_directory()

const std::string & pineforge::engine_script_run_v19::TradeLedger::scratch_directory ( ) const

◆ set_cache_rows()

void pineforge::engine_script_run_v19::TradeLedger::set_cache_rows ( size_type rows)

◆ cache_rows()

size_type pineforge::engine_script_run_v19::TradeLedger::cache_rows ( ) const

◆ resident_cache_bytes()

static size_type pineforge::engine_script_run_v19::TradeLedger::resident_cache_bytes ( size_type rows)
static

◆ cache_resident_bytes()

size_type pineforge::engine_script_run_v19::TradeLedger::cache_resident_bytes ( ) const

◆ cache_size()

size_type pineforge::engine_script_run_v19::TradeLedger::cache_size ( ) const

◆ clear()

void pineforge::engine_script_run_v19::TradeLedger::clear ( )

◆ reserve()

void pineforge::engine_script_run_v19::TradeLedger::reserve ( size_type )

◆ size()

size_type pineforge::engine_script_run_v19::TradeLedger::size ( ) const

◆ base()

size_type pineforge::engine_script_run_v19::TradeLedger::base ( ) const

◆ resident_size()

size_type pineforge::engine_script_run_v19::TradeLedger::resident_size ( ) const

◆ resident_base()

size_type pineforge::engine_script_run_v19::TradeLedger::resident_base ( ) const

◆ empty()

bool pineforge::engine_script_run_v19::TradeLedger::empty ( ) const

◆ read()

Trade pineforge::engine_script_run_v19::TradeLedger::read ( size_type global) const

◆ operator[]()

Trade pineforge::engine_script_run_v19::TradeLedger::operator[] ( size_type global) const

◆ at()

Trade pineforge::engine_script_run_v19::TradeLedger::at ( size_type global) const

◆ back()

Trade pineforge::engine_script_run_v19::TradeLedger::back ( ) const

◆ numeric_at()

Trade pineforge::engine_script_run_v19::TradeLedger::numeric_at ( size_type global) const

◆ entry_id_at()

std::string pineforge::engine_script_run_v19::TradeLedger::entry_id_at ( size_type global) const

◆ pnl_at()

double pineforge::engine_script_run_v19::TradeLedger::pnl_at ( size_type global) const

◆ pnl_pct_at()

double pineforge::engine_script_run_v19::TradeLedger::pnl_pct_at ( size_type global) const

◆ commission_at()

double pineforge::engine_script_run_v19::TradeLedger::commission_at ( size_type global) const

◆ entry_bar_index_at()

std::int32_t pineforge::engine_script_run_v19::TradeLedger::entry_bar_index_at ( size_type global) const

◆ exit_bar_index_at()

std::int32_t pineforge::engine_script_run_v19::TradeLedger::exit_bar_index_at ( size_type global) const

◆ entry_incarnation_at()

std::uint64_t pineforge::engine_script_run_v19::TradeLedger::entry_incarnation_at ( size_type global) const

◆ entry_price_at()

double pineforge::engine_script_run_v19::TradeLedger::entry_price_at ( size_type global) const

◆ exit_price_at()

double pineforge::engine_script_run_v19::TradeLedger::exit_price_at ( size_type global) const

◆ entry_time_at()

std::int64_t pineforge::engine_script_run_v19::TradeLedger::entry_time_at ( size_type global) const

◆ exit_time_at()

std::int64_t pineforge::engine_script_run_v19::TradeLedger::exit_time_at ( size_type global) const

◆ qty_at()

double pineforge::engine_script_run_v19::TradeLedger::qty_at ( size_type global) const

◆ max_runup_at()

double pineforge::engine_script_run_v19::TradeLedger::max_runup_at ( size_type global) const

◆ max_drawdown_at()

double pineforge::engine_script_run_v19::TradeLedger::max_drawdown_at ( size_type global) const

◆ is_long_at()

bool pineforge::engine_script_run_v19::TradeLedger::is_long_at ( size_type global) const

◆ entry_comment_at()

std::string pineforge::engine_script_run_v19::TradeLedger::entry_comment_at ( size_type global) const

◆ exit_comment_at()

std::string pineforge::engine_script_run_v19::TradeLedger::exit_comment_at ( size_type global) const

◆ exit_id_at()

std::string pineforge::engine_script_run_v19::TradeLedger::exit_id_at ( size_type global) const

◆ replace()

void pineforge::engine_script_run_v19::TradeLedger::replace ( size_type global,
const Trade &  )

◆ modify()

void pineforge::engine_script_run_v19::TradeLedger::modify ( size_type global,
const std::function< void(Trade &)> &  )

◆ push_back() [1/2]

void pineforge::engine_script_run_v19::TradeLedger::push_back ( const Trade & trade)

Append at the logical global end (3.4:613-616).

◆ push_back() [2/2]

void pineforge::engine_script_run_v19::TradeLedger::push_back ( Trade && trade)

◆ resize()

void pineforge::engine_script_run_v19::TradeLedger::resize ( size_type global_end)

◆ begin()

const_iterator pineforge::engine_script_run_v19::TradeLedger::begin ( ) const

◆ end()

const_iterator pineforge::engine_script_run_v19::TradeLedger::end ( ) const

Referenced by visit().

◆ visit()

void pineforge::engine_script_run_v19::TradeLedger::visit ( size_type first,
size_type end,
const Visitor &  ) const

References end().

◆ previous()

bool pineforge::engine_script_run_v19::TradeLedger::previous ( size_type & cursor,
Trade & value ) const

◆ materialize()

const Trade & pineforge::engine_script_run_v19::TradeLedger::materialize ( size_type global) const

◆ seal()

void pineforge::engine_script_run_v19::TradeLedger::seal ( size_type global_end)

Field Documentation

◆ kRecordBytes

size_type pineforge::engine_script_run_v19::TradeLedger::kRecordBytes = 168
staticconstexpr

Definition at line 37 of file trade_ledger.hpp.

◆ kResidentRows

size_type pineforge::engine_script_run_v19::TradeLedger::kResidentRows = 64
staticconstexpr

Definition at line 38 of file trade_ledger.hpp.

◆ kCacheStringBytes

size_type pineforge::engine_script_run_v19::TradeLedger::kCacheStringBytes = 128
staticconstexpr

Definition at line 45 of file trade_ledger.hpp.

◆ kLedgerEntryBytes

size_type pineforge::engine_script_run_v19::TradeLedger::kLedgerEntryBytes
staticconstexpr
Initial value:

Definition at line 46 of file trade_ledger.hpp.

◆ kDefaultCacheRows

size_type pineforge::engine_script_run_v19::TradeLedger::kDefaultCacheRows = 65536
staticconstexpr

Definition at line 48 of file trade_ledger.hpp.

◆ kMaxCacheRows

size_type pineforge::engine_script_run_v19::TradeLedger::kMaxCacheRows = 1048576
staticconstexpr

Definition at line 49 of file trade_ledger.hpp.

◆ kSinkCacheRows

size_type pineforge::engine_script_run_v19::TradeLedger::kSinkCacheRows = 128
staticconstexpr

Definition at line 52 of file trade_ledger.hpp.


The documentation for this class was generated from the following file: