{"id":32558830,"url":"https://github.com/stsoftwareau/grq-fx-validation","last_synced_at":"2025-10-28T23:59:38.820Z","repository":{"id":306695321,"uuid":"1026946436","full_name":"stSoftwareAU/GRQ-FX-validation","owner":"stSoftwareAU","description":"Validation of the FX models.","archived":false,"fork":false,"pushed_at":"2025-10-23T13:35:19.000Z","size":6828,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"Develop","last_synced_at":"2025-10-23T15:34:10.637Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://stsoftwareau.github.io/GRQ-FX-validation/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stSoftwareAU.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-07-27T01:05:52.000Z","updated_at":"2025-10-23T13:35:23.000Z","dependencies_parsed_at":"2025-07-27T05:16:30.181Z","dependency_job_id":"01ade4b1-08d9-495d-837c-f5e2a359c375","html_url":"https://github.com/stSoftwareAU/GRQ-FX-validation","commit_stats":null,"previous_names":["stsoftwareau/grq-fx-validation"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/stSoftwareAU/GRQ-FX-validation","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stSoftwareAU%2FGRQ-FX-validation","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stSoftwareAU%2FGRQ-FX-validation/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stSoftwareAU%2FGRQ-FX-validation/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stSoftwareAU%2FGRQ-FX-validation/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stSoftwareAU","download_url":"https://codeload.github.com/stSoftwareAU/GRQ-FX-validation/tar.gz/refs/heads/Develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stSoftwareAU%2FGRQ-FX-validation/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":281533432,"owners_count":26517827,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-28T02:00:06.022Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-28T23:58:46.959Z","updated_at":"2025-10-28T23:59:38.813Z","avatar_url":"https://github.com/stSoftwareAU.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GRQ FX Validation Dashboard\n\nA JAMstack-based dashboard for validating AI predictions against actual FX rates over time.\n\n## Architecture\n\nThis project follows JAMstack principles:\n- **JavaScript**: Client-side JavaScript for dynamic functionality\n- **APIs**: Static JSON files served as data APIs\n- **Markup**: Pre-built HTML files served statically\n\n## Features\n\n- **FX Prediction Validation**: Compare AI predictions with actual FX rates\n- **Time Horizon Analysis**: Focus on monthly (30d), quarterly (90d), half-year (180d), and full-year (365d) predictions\n- **Performance Metrics**: Calculate accuracy, error rates, and performance statistics\n- **Interactive Charts**: Visualize prediction vs actual rates using Chart.js\n- **Pending Actual Rates**: Handle cases where actual rates aren't available yet\n- **Date-based Filtering**: Browse predictions by date range\n- **Performance Filtering**: Filter by accuracy levels (high, medium, low)\n- **Responsive Design**: Works on desktop and mobile devices\n\n## Time Horizons\n\nThe dashboard focuses on four key prediction timeframes:\n\n| Period | Days | Description |\n|--------|------|-------------|\n| Monthly | 30 | One-month predictions |\n| Quarterly | 90 | Three-month predictions |\n| Half-Year | 180 | Six-month predictions |\n| Full-Year | 365 | One-year predictions |\n\n## Data Availability\n\n- **Historical Rates**: 12 months of historical data available from prediction date\n- **Actual Rates**: Updated as they become available over time\n- **Pending Status**: Shows \"Pending\" for future dates where actual rates aren't available yet\n\n## File Structure\n\n```\ndocs/\n├── index.html          # Main dashboard page\n├── list.html           # Prediction files list page\n├── index.json          # Index of available prediction dates\n├── styles.css          # Main stylesheet\n├── list.css            # List page stylesheet\n├── logo.png            # Dashboard logo\n└── 2025-07-27/         # Prediction data directory\n    ├── predictions.json # FX predictions for this date\n    ├── AUDCAD.csv      # Actual rates for AUD/CAD\n    ├── AUDCNY.csv      # Actual rates for AUD/CNY\n    └── ...             # Other currency pairs\n```\n\n## Data Format\n\n### index.json\n```json\n{\n  \"entries\": {\n    \"2025-07-27\": {\n      \"date\": \"2025-07-27\",\n      \"type\": \"fx_predictions\",\n      \"description\": \"FX predictions for 2025-07-27\",\n      \"file\": \"2025-07-27/predictions.json\"\n    }\n  }\n}\n```\n\n### predictions.json\n```json\n{\n  \"date\": \"2025-07-27\",\n  \"results\": [\n    {\n      \"pair\": \"AUDCAD\",\n      \"currentRate\": 0.9123,\n      \"predictions\": [\n        {\n          \"days\": 30,\n          \"predictedRate\": 0.9150,\n          \"predictedChangePercent\": 0.3\n        },\n        {\n          \"days\": 90,\n          \"predictedRate\": 0.9200,\n          \"predictedChangePercent\": 0.8\n        },\n        {\n          \"days\": 180,\n          \"predictedRate\": 0.9250,\n          \"predictedChangePercent\": 1.4\n        },\n        {\n          \"days\": 365,\n          \"predictedRate\": 0.9300,\n          \"predictedChangePercent\": 1.9\n        }\n      ]\n    }\n  ]\n}\n```\n\n## Usage\n\n1. **View Dashboard**: Open `docs/index.html` in a web browser\n2. **Select Date**: Choose a prediction date from the dropdown\n3. **View Performance**: See charts and tables showing prediction accuracy\n4. **Monitor Progress**: Track which actual rates are available vs pending\n5. **Browse Files**: Use `list.html` to see all available prediction files\n\n## Performance Metrics\n\nThe dashboard calculates several key metrics:\n\n- **Total Pairs**: Number of FX pairs analyzed\n- **Available Actuals**: Count of actual rates available vs total possible\n- **Average Error**: Mean prediction error across available time horizons\n- **Best Performer**: FX pair with lowest average error\n\n## Deployment\n\nThis is a static site that can be deployed to any web server or CDN:\n\n- **GitHub Pages**: Push to a GitHub repository and enable Pages\n- **Netlify**: Drag and drop the `docs` folder\n- **Vercel**: Connect your repository\n- **AWS S3**: Upload files to an S3 bucket with static website hosting\n\n## Adding New Prediction Data\n\n1. Create a new directory in `docs/` with the prediction date (e.g., `2025-08-01/`)\n2. Add `predictions.json` with your prediction data for the 4 time horizons\n3. Add CSV files for actual rates as they become available\n4. Update `index.json` to include the new entry\n\n## Browser Compatibility\n\n- Chrome 60+\n- Firefox 55+\n- Safari 12+\n- Edge 79+\n\n## Dependencies\n\n- Bootstrap 5.3.0 (CDN)\n- Chart.js (CDN)\n- Font Awesome 6.4.0 (CDN)\n\nNo build process or server-side code required!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstsoftwareau%2Fgrq-fx-validation","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstsoftwareau%2Fgrq-fx-validation","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstsoftwareau%2Fgrq-fx-validation/lists"}