Changelog
All notable changes to this project will be documented in this file.
The project adheres to Semantic Versioning ⧉.
2.0.1
Release Date: 2025-01-12*
- Fixes
- Corrected merged candles not combining aggregation factor
- Fix error when appending a list with one Candle
2.0.0
Release Date: 2024-12-19
-
Non-backward compatible changes:
- Re-named several Hexital arguments
- candles_lifespan -> candle_life
- candlestick_type -> candlestick
- Re-named several Indicator arguments
- input_value -> source
- fullname_override -> name
- candles_lifespan -> candle_life
- candlestick_type -> candlestick
- rounding_value -> rounding
- Candle's now require a timestamp, a single candle added will use the current UTC time
- Candle timeframe attribute:
- Candle's now have a timeframe attribute, this shows the resolution of the Candle, this is optional for Candle's
- Merging Candle's now take into account first and last Candles for accurate Open/Close value updates
- Appending Candles will now be sorted, allowing to say Append missing or back data
- Improved the speed of Candle timeframe collapsing
- Re-named several Hexital arguments
-
Re-wrote Testing method
- Removed unreliable deepdiff rounding
- Removed soft Correlation Coefficient
- Custom accuracy none rounding driven custom diff check
- Updated Movement methods to accept
Indicator | Hexital | List[Candle]
and searches the given object to find the specific'd indicator(s)- Movement methods can now accept Indicator's from different timeframes when used with Hexital object
- Added 'candles_average' method to Indicator
- Added 'exists' to do same as prev_exists for correct handling dict's
- Updated Candle to now accept either 'timestamp' or 'time' for time's in 'from_dict(s)'
- Updated 'reading_count' to accept an index to count from
- Updated Hexital append with optional 'timeframe' to select specific Candle's to append too
- Updated 'candles' in Hexital method to accept timeframe's or indicators
- Updated 'prev_exists' to correctly handle Dict's
-
Updated Rounding to accept 'None' to indicate no rounding, default is still 4
-
Added Movements
- Added flipped, to detect changes in bool's or solid values
- Added Indicators
- Chande Momentum Oscillator (CMO)
- High Low Close Average (HLCA)
- Money Flow Index (MFI)
- Midpoint Over Period (MOP)
- Pivot Points (PivotPoints)
- Jurik Moving Average Average (JMA)
- Added Relative Vigor Index (RVI)
- Alterations
- Added Anchor to VWAP
- Renamed several Indicators Internal:
- HighestLowest -> HL
- HighLowAverage -> HLA
- StandardDeviation -> STDEV
- StandardDeviationThreshold -> STDEVT
- Fixes
- Fixed Timeframe rounding to correctly handle days
- Fixed OBV
- No rounding for sub/managed indicators
- Fixed STDEV/bbands
- Corrected when start calculation
- Fixed KC
1.1.2
Release Date: 2024-05-03
- Fixed Major incremental calculate flaw with sub indicators
- Causing sub indicators to almost always re-calc entire set rather than latest (incrementally)
- Optimised Analysis and Movement functions for less calls and less loops
- Removed Deepcopies on Candles unless being added to Extra timeframes to speed up appending
1.1.1
Release Date: 2024-05-01
- Changed Movement rising/falling default length from 4 to 1
- Added better exceptions to Hexital verifying dict indicators
- Mass Indicator clean up to fix, unused/unended input_value's and unused sub indicators
- Fixed minor donchian error
- Fixed Highest and Lowest movement methods from returning bool False instead of None
- Added Indicators
- Added HighestLowest (HL)
- Added Standard Deviation Threshold (STDEVTHRES)
1.1.0
Release Date: 2024-04-21
- Removed Movement/Patterns from Hexital/Indicator
- Removed get_indicator from Hexital as indicator already exists
- Renamed candles_all to get_candles
- Updated prev_exists to accept optional Indicator to be more useful
- Altered Indicator name reading, to avoid issue's such as "TR" in "ATR"
- Changed several methods to properties in Candle (positive, realbody, etc)
- Updated Candle to be more flexible with values
- Corrected correlation_coefficient for unit testing
- Added Indicators
- Counter
- Aroon (aroon)
- Donchian Channels (donchian)
- Hull Moving Average (HMA)
- True Strength Index (TSI)
- Standard Deviation (STDEV)
- Bollinger Bands (BBANDS)
- Added Patterns
- Inverted Hammer
- Dojistar
1.0.1
Release Date: 2024-04-08
- Fixed #12 Inaccurate verify_indicators method in Hexital
1.0.0
Release Date: 2024-02-11
- Moving Into BETA
- Added CandleManager
- CandleManger replaces List[Candle] to manage Candles and controls CandlestickTypes, timeframes and lifespan
- Added CandlestickType
- CandlestickType modular parent to convert candlesticks to alt types,
- E.G Auto convert candles to heikin-ashi
- Can be added as str 'candlestick_type="ha"' for heikin-ashi
- Converted Candle to Class from Dataclass
- Added Many Candle analysis methods to Candle:
- Positive, Negative, realbody, shadow_upper, shadow_lower, high_low
- Added Tag and 'clean_values' to Candle to support conversion of Candlesticks
- Added Pattern_map, Movement_map, Indicator_map and Candlestick_map for easier control and possible modular altering
- Added Heikin-Ashi candlestick conversion
- Added better config inheritance from Hexital to Indicators
- Added calculate_index to hexital
- Added ability to call the movement and pattern methods from Hexital and Indicator for easier usage
- above, below, cross, crossover, doji, hammer, etc..
- Added sanitise_name to convert '.' to ',' to support name nesting
- Added more Exceptions to improve error's
- Added Candle ability to accept json str timestamp, therefore allowing direct conversion from Pandas -> Hexital
- Fixed Hammer index pattern working correctly
- Changed Sub/managed indicators to auto populate candles field
- Changed 'as_list' property a method that can now take a nested indicator name
- Removed read property
- Renamed utils/candlesticks to utils/candles
0.4.0
Release Date: 2024-01-22
- Cleaned up code and some potential Bugs ruff/pyright
- Added movement Above/Below and updated others to use it
- Updated collapse candle 'fill' to show essentially doji candle rather than copy prev
- Added Patterns:
- Hammer Candle
- Added a TimeFrame Enum with common timeframes for easier usage
- Renamed Pattern to Amorph and updated to only require either 'indicator' or 'analysis'
- Renamed candles_timerange to candles_lifespan, to be clearer of purpose and avoid confusion with candles_timeframe
- Updated Hexital/Amorph to accept patterns, movements and custom methods
- Major Fix: Re-wrote collapse_candles_timeframe to correctly handle candles,gaps and appending
- Fixed Doji pattern
- Fixed Supertrend Indicator
- Fixed Timeframe bug with candles reference in indicator that use sub indicators
- Fixed possible error in VWAP with no volumes traded
- Fixed bug with nested Indicator returning None for valid 0 Value
- Fixed purge not correctly purge sub and managed indicators
0.3.1
Release Date: 2023-10-09
- Added candles_timerange to auto remove older than N candles
- Added 'Settings' propety, to output Indicator in a dict format, that can be fed into back into Hexital
- Updated Hexital to better take Pattern's as a dict input
- Updated Hexital dict input to accept custom method Patterns
- Fixed bug in Movement on to few candles
- Fixed bug where no timeframe indicator wasnt creating new copy of candles
- Fixed bug where collapsed timeframe candles will use first calculated indicator value
- Meaning 1 minute candle that only had first 10 seconds, will never re-calculate for rest of the minute
0.3.0
Release Date: 2023-09-27
- Added Patterns:
- Doji Candle
- Added append method to Indicator just like Hexital
- Fixed bug where Hexital would alter indicator list
- Fixed bug in _find_calc_index with no candles
- Added Pattern Indicator, skeleton to run Any Patterns as a Indicator
- E.G On all Candles automatically
- Added support to generate Indicators on multiple timeframes at once
- Allowing one set of candles to be used to generate higher timeframe indicators
- E.G 1m candles can be used to generate 10m indicators simultaneously with 1m indicators
0.2.0
Release Date: 2023-09-05
- Feature: Added timestamp (datetime) to Candle dataclass
- Feature: Can convert Candle from list and dict
- Feature: Can set timestamp(datetime) in lists/dict Candle conversion
- Feature: Added _validate_fields method to Indicators
- Added custom exceptions
- More thorough unit testing
- Updated Indicators accuracy to Truth source
- Added private index property to Indicator allowing simpler method calls
- self.reading_by_index(index, self.input_value) -> self.reading(self.input_value)
- Multiple Method's renamed/argument re-ordered
- Added Indicators:
- ADX
- HLA
- KC
- OBV
- RMA
- ROC
- STOCH
- SuperTrend
- VWAP
- VMA
- WMA
0.1.1
Release Date: 2023-08-28
- Nada
0.1.0
Release Date: 2023-08-27
- Alpha release
hexital