A REST API and web-based analysis tool for financial time series correlation analysis, featuring automated data processing and visualization capabilities.
- CSV and JSON file support
- Automated price data detection
- Multiple data format handling
- Time series data support
- Percentage change correlation calculations
- Pearson correlation coefficient analysis
- Correlation classification:
- Strong positive (> 70%)
- Moderate positive (30-70%)
- Little/no correlation (-30% to 30%)
- Moderate negative (-30% to -70%)
- Strong negative (< -70%)
- Interactive Plotly charts
- Dual-axis correlation visualization
- HTML-based output
- ASP.NET Core REST API
- ML.NET for data processing
- SoftCircuits.CsvParser
- System.Text.Json
- Plotly.js
POST /api/upload
Content-Type: multipart/form-data
interface AnalysisResult {
insights: string;
graphUrl: string;
totalCorrelations: number;
strongPositive: number;
moderatePositive: number;
moderateNegative: number;
strongNegative: number;
noCorrelation: number;
positivePercentage: number;
negativePercentage: number;
}
DataAnalysisService
: Analysis logicUploadController
: API handlingFileUploadDto
: Upload modelAnalysisResult
: Output modelAnalysisConfiguration
: Settings model
Δ% = ((pₙ - pₙ₋₁) / pₙ₋₁) × 100
r = Σ((x - μₓ)(y - μᵧ)) / √(Σ(x - μₓ)² × Σ(y - μᵧ)²)
Q = (C × 10) + V + R + S
- Install .NET runtime
- Clone repository
- Run
dotnet restore
- Execute
dotnet run
- Access Swagger UI at root URL
Full API documentation available via Swagger UI