DataFrame Versions Save

C++ DataFrame for statistical, Financial, and ML analysis -- in modern C++ using native types and contiguous memory storage

1.17.0

2 years ago

Bug fixes, including in DateTime, is_equal(), write() Rearranged code to make it easier to compile as DLL Significantly improved docs both in terms of format and content Implemented Percent Price Oscillator visitor Added consolidated() for 4 and 5 columns Added another version of shift() to return a copy of a single shifted column Implemented Ulcer Index visitor Completely redesigned groupby() interface and made it significantly more versatile Completely redesigned bucketize() interface and made it significantly more versatile Implemented Count visitor Added ISO date format to DateTime Implemented ability to read()/write() DateTime as strings into streams Fixed a few move semantics to improve memory efficiency

1.16.0

3 years ago

Improved documentation Minor bug fixes including a bug in MassIndexVisitor Implemented CCIVisitor (Commodity Channel Index) Implemented gen_triangular_nums() Rearranged code Implemented EntropyVisitor (information entropy) Implemented GarmanKlassVolVisitor (Garman Klass volatility) Implemented YangZhangVolVisitor (Yang Zhang volatility) Added columns_only flag to read()/write() Added non-zero flag option to DiffVisitor Implemented KamaVisitor (Kaufman's Adaptive Moving Average) Implemented FisherTransVisitor (Fisher transform) Implemented SlopeVisitor Implemented UltimateOSCIVisitor (Ultimate Oscillator)

1.15.0

3 years ago

Fixed bugs, notably:

  • Fixed a bug in MACDVisitor calculation
  • Fixed a bug in vector reverse iterators
  • Fixed DataFrame destructor to work properly in multithreading environments

Streamlined and simplified code Enhanced documentations Implemented gen_even_space_nums() Generalized read/write to take either file name or stream Made columns to have deterministic order. Now you can access columns either by name or index With column order, implemented left/right rotating and shifting Implemented remove_duplicates() for a single column Implemented TTestVisitor Implemented MassIndexVisitor Implemented WeightedMeanVisitor Added in_reverse to visit() methods Implemented QuadraticMeanVisitor Implemented HullRollingMeanVisitor Implemented RollingMidValueVisitor Implemented DrawdownVisitor Added single_act_visit() for 3 and 4 columns Implemented WilliamPrcRVisitor Added repeat_count to ExponentialRollAdopter, so we can have multiple smoothing in one call Added repeat_count to ExpoSmootherVisitor

1.14.0

3 years ago

Added weights and residual calculations to PolyFitVisitor Implemented LogFitVisitor Implemented ExpoSmootherVisitor (exponential smoothing) Implemented HWExpoSmootherVisitor (Holt-Winters double exponential smoothing) Implemented consolidate() Specialized std::hash for DateTime Implemented [Max|Min]SubArrayVisitor (sub-intervals with max/min sums) Replaced all Max/Min’s with Extremums visitors and typedef’ed Max/Min Implemented LowessVisitor (Locally Weighted Scatterplot Smoothing) Implemented StepRollAdopter Implemented DecomposeVisitor (STL time-series decomposer) with additive and multiplicative options Enhanced documentations Fixed bugs and compile issues

1.12.0

3 years ago

Improve single-act-visitor interface to be more flexible Bug fixes Enhanced documentation Implemented gen_log_space_nums() to generate logarithmically-spaced numbers Implemented remove_duplicates() Enhanced group-by functionality and made it more generalized Implemented io_format::csv2 to read/write files in Pandas csv format Implemented empty() and shapeless() Implemented Box-Cox visitor Implemented Normalize and Standardize visitors Implemented Hampel filter visitor Implemented Polynomial Fit visitor Implemented Hurst Exponent visitor

1.11.0

3 years ago

Enhanced documentation Fixed all VSC++ warnings for 64bit compilation (we don’t compile 32bit anymore) Implemented RankVisitor Improved random number generation Implemented SigmoidVisitor Implemented combine() method Added nodiscard to some methods Implemented RSIVisitor (Relative Strength Index)

1.10.0

3 years ago

Enhanced DateTime object Implemented get_columns_info method Implemented CategoryVisitor visitor Implemented FactorizeVisitor visitor Implemented pattern_match method Changed shrink_to_fit() to optimize for power of 2 cache line aliasing misses Implemented ClipVisitor visitor Significantly enhanced documentation both in terms of content and format Fixed a bug in DateTime object related to time zones Implemented SharpeRatioVisitor visitor

1.9.0

4 years ago

Added visit_async() and single_act_visit_async() methods Enhanced documentations Fixed many codacy complains Fixed a glitch in DateTime related to nanoseconds Added Conan package support, thanks to @yssource Added get retype_column() method Added load_align_column() method Brought the whole codebase to 100% compliance with C++ standards (using _GLIBCXX_DEBUG)

1.8.0

4 years ago

Added mid_point to fill_policy Added quantile visitor Added VWAP (Volume Weighted Average Price) visitor Added VWBAS (Volume Weighted Bid-Ask Spread) visitor Added concat() and self_concat() methods Added get_reindexed() and get_reindexed_view() methods Made all get methods (i.e. views) const Switched to HTML docs

1.7.0

4 years ago

Code reorganization Added DataFrame method get_memory_usage() Divided visitor source file into Stats, ML, and financial source files Added exponential-moving-stats adopter for visitors Added Geometric-Mean visitor Added Harmonic-Mean visitor Added Double-Cross-Over visitor Added Bollinger-Band visitor Added Moving-Average-Convergence/Divergence visitor Added Expanding-Roll-Adopter for visitors Added support for Conan file compiling Improved multi-threading + added multi-threading to more algos Added MADVisitor -- 4 different Mean-Absolute-Deviation visitor logic Added Standard-Error-of-the-Mean visitor