Analytics Engine - Grevlin Price Intelligence Suite
by Grevlin Global Corp. https://grevlin.com$ 664.22
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Contacts (contacts) |
| Community Apps Dependencies | Show |
| Lines of code | 7795 |
| Technical Name |
grev_od_market_analytics |
| License | OPL-1 |
| Website | https://grevlin.com |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Discuss (mail)
• Contacts (contacts) |
| Community Apps Dependencies | Show |
| Lines of code | 7795 |
| Technical Name |
grev_od_market_analytics |
| License | OPL-1 |
| Website | https://grevlin.com |
Analytics Engine — Price Intelligence SuiteTimescaleDB-powered analytics, forecasting, and market intelligence for Odoo 19.0
|
|
|
|
Need Help?For support, contact us at odoo@grevlin.com Follow us on X: @GrevlinGlobal ✓ 30 days free support |
Grevlin Price Intelligence Suite - Analytics Engine
This module provides TimescaleDB integration, statistical analytics, market comparisons, and price forecasting for the Grevlin Price Intelligence Suite.
Overview
The Analytics Engine bridges Odoo's ORM with TimescaleDB to deliver high-performance time-series analytics on commodity price data. Published price records are synced to a TimescaleDB hypertable where continuous aggregates provide pre-computed daily, weekly, monthly, and yearly summaries.
Key Features
- TimescaleDB integration via hypertables and continuous aggregates
- Analytics metrics: moving averages (7d/30d), volatility, trend detection, price spreads, inflation tracking, seasonal indices, price indices
- Market-to-market comparisons with arbitrage opportunity detection
- Forecasting engine: linear regression, moving average, seasonal decomposition
- Automated price sync from ORM to TimescaleDB
- Configurable forecast models with training windows
Installation
Prerequisites
- TimescaleDB must be installed as a PostgreSQL extension on your Odoo database server
- numpy Python package (optional, stdlib fallbacks available)
Steps
- Install TimescaleDB on your PostgreSQL server
- Place the grev_od_market_analytics folder in your Odoo addons path
- Install the module from :menuselection:`Settings --> Technical --> Database Structure --> Update Apps List`
Warning
TimescaleDB is required for full functionality. Without it, the module will install but hypertable features will be unavailable.
Configuration
TimescaleDB Setup
- Navigate to :menuselection:`Market Price Intelligence --> Configuration --> TimescaleDB Configuration`
- Click :guilabel:`Create` to add a hypertable configuration
- Configure:
- :guilabel:`Hypertable Name`: Name of the hypertable (e.g., price_observations)
- :guilabel:`Chunk Interval`: Time interval for chunk partitioning (e.g., 7 days)
- :guilabel:`Retention Policy Days`: How long to keep raw data
- :guilabel:`Compression Enabled`: Enable TimescaleDB compression
- Click :guilabel:`Initialize` to create the hypertable and continuous aggregates
Important
The CREATE EXTENSION IF NOT EXISTS timescaledb command must succeed on your database. Ensure your PostgreSQL user has superuser or extension creation privileges.
Forecast Configurations
- Go to :menuselection:`Market Price Intelligence --> Forecasting --> Forecast Configurations`
- Create configurations for different product categories:
- :guilabel:`Model Type`: linear_regression, moving_average, or seasonal
- :guilabel:`Training Window Days`: Historical data window
- :guilabel:`Parameters`: JSON configuration for model tuning
Usage
Viewing Analytics Results
- Navigate to :menuselection:`Market Price Intelligence --> Analytics --> Analytics Results`
- Filter by product, market, country, or metric type
- Results are computed automatically by cron jobs
Market Comparisons
- Go to :menuselection:`Market Price Intelligence --> Analytics --> Market Comparisons`
- View price differences between market pairs
- Records with significant price differences are flagged as arbitrage opportunities
Forecasts
- Navigate to :menuselection:`Market Price Intelligence --> Forecasting --> Forecasts`
- Each forecast shows predicted price with confidence intervals (upper/lower bounds)
- Accuracy scores are computed when actual prices become available
Technical Reference
Models
| Model | Technical Name | Description |
|---|---|---|
| TimescaleDB Config | grev.timescale.config | Hypertable lifecycle management |
| Analytics Result | grev.analytics.result | Computed metric storage |
| Market Comparison | grev.market.comparison | Pairwise market price comparison |
| Forecast | grev.forecast | Price forecast with confidence intervals |
| Forecast Config | grev.forecast.config | Forecast model configuration |
| Timescale Mixin | grev.timescale.mixin | AbstractModel with TimescaleDB SQL methods |
Analytics Metric Types
| Metric | Description |
|---|---|
| moving_avg_7d | 7-day moving average |
| moving_avg_30d | 30-day moving average |
| volatility | Price volatility (standard deviation) |
| trend | Trend direction and magnitude |
| spread | Price spread across markets |
| inflation | Period-over-period price change |
| seasonal_index | Seasonal adjustment factor |
| price_index | Normalized price index |
Services
The module includes pure Python service modules:
- services/analytics_engine.py: Statistical computations (moving averages, volatility, trend detection)
- services/forecast_engine.py: Forecasting algorithms (linear regression, moving average, seasonal)
- services/timescale_service.py: SQL query builders for TimescaleDB operations
See also
- Price Collection module for data input
- Report Generation module for automated reports
- Portal & API module for external data access
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module