Project Structure
MT5report-parser/
├── backend/
│ ├── [2]_Drop_xlsx_here/
│ │ ├── drop the xlsx sample here
│ │ ├── test.xlsx
│ │ └── test_pipeline.xlsx
│ ├── [3]_Process/
│ │ ├── 1_layer.py
│ │ ├── 2_layer.py
│ │ ├── 3_layer.py
│ │ ├── 4_layer.py
│ │ ├── 5_layer.py
│ │ ├── 6_layer.py
│ │ ├── 7_layer.py
│ │ ├── 8_layer.py
│ │ ├── 9_layer.py
│ │ ├── ReportTester-263254895.xlsx
│ │ ├── test.py
│ │ └── test_2.xlsx
│ ├── [4]_output_csv_files/
│ │ ├── Upload-1_ID/
│ │ │ ├── 4_layer_output.csv
│ │ │ ├── 5_layer_output.csv
│ │ │ ├── 6_layer_output.csv
│ │ │ ├── 7_layer_output.csv
│ │ │ ├── 8_layer_output.csv
│ │ │ ├── 9_layer_output.csv
│ │ │ ├── extracted_deals.csv
│ │ │ ├── extracted_orders.csv
│ │ │ ├── merged_extracted_orders_and_deals.csv
│ │ │ ├── Sheet1.csv
│ │ │ └── visualize_results.py
│ │ └── outputs will go here
│ ├── .env
│ ├── [1]_main_watchdog.py
│ ├── server.py
│ ├── test_backend.py
│ └── workflow.md
├── frontend/
│ ├── public/
│ │ └── vite.svg
│ ├── src/
│ │ ├── assets/
│ │ │ └── react.svg
│ │ ├── components/
│ │ │ ├── DropZone.jsx
│ │ │ ├── FileViewer.jsx
│ │ │ └── ResultList.jsx
│ │ ├── App.css
│ │ ├── App.jsx
│ │ ├── index.css
│ │ └── main.jsx
│ ├── .gitignore
│ ├── eslint.config.js
│ ├── index.html
│ ├── package-lock.json
│ ├── package.json
│ ├── postcss.config.js
│ ├── README.md
│ ├── tailwind.config.js
│ └── vite.config.js
├── use this for lineschart & y-distribution graphs/
│ ├── Trade Report_graphs.pdf
│ ├── Trade Report_graphs.png
│ ├── visualize_results (plotlylocalhost).py
│ ├── visualize_results (plotlylocalhost, png, pdf ).py
│ ├── visualize_results (png, pdf ).py
│ └── you either change it in the watchdog.py or directly run this file
├── use this sample file and drop at [2]/
│ └── ReportTester-263254895.xlsx
├── LICENSE
├── metrics_consideration.pdf
├── newplot.png
├── README.md
├── requirements.txt
└── TECHSTACK.md