1 điểm bởi harry395 6 ngày trước | Chưa có bình luận nào. | Chia sẻ qua WhatsApp

Đây là một dự án phụ cá nhân tôi làm vì thấy ấm ức khi giá xăng giảm vào đúng ngày sau khi vừa đổ.

Với dữ liệu công khai Opinet, bạn có thể biết "hôm nay ở đâu rẻ" nhưng không thể biết "nên đổ hôm nay hay chờ thêm". Vì vậy, tôi đã tạo một mô hình dự đoán biến động giá trong 7 ngày bằng cách kết hợp giá theo ngày của 11.500 cây xăng trên toàn quốc từ năm 2022 với các biến như giá dầu quốc tế (WTI·Dubai), tỷ giá và thuế nhiên liệu, rồi hiển thị kết quả mỗi sáng bằng tín hiệu đèn giao thông. Không nói kiểu "có vẻ sẽ tăng?" mà nói bằng số tiền như "nếu chờ thì sẽ tiết kiệm khoảng 40 won mỗi lít".

Thiết kế cốt lõi không nằm ở mô hình mà là ở đây: dịch vụ dự đoán sẽ chấm hết nếu không trả lời được câu hỏi "vì sao tôi phải tin điều này?", nên mỗi ngày tôi tự động chấm điểm dự đoán của ngày hôm qua và công khai nguyên bảng điểm ngay trong ứng dụng. Hơn 30.000 lượt chấm điểm tích lũy, tỷ lệ trúng 99% cho dự đoán "không tăng", cả tỷ lệ các gợi ý "ở đây rẻ" thực sự đúng là rẻ — tất cả đều được công khai. Nếu sai thì các con số sẽ giảm và người dùng nhìn thấy điều đó, nhờ vậy chính tôi cũng không thể làm mô hình một cách qua loa.

Cấu trúc được giữ đơn giản theo nguyên tắc chi phí cố định 0 won:

CSV hằng ngày từ Opinet → DuckDB (chuỗi thời gian 4,6GB, cục bộ) → feature → dự đoán → chấm điểm → snapshot phục vụ, hoàn toàn tự động mỗi ngày trước 07:30 bằng launchd
Phục vụ bằng FastAPI + một file HTML duy nhất viết bằng vanilla JS (90KB), chỉ dùng Supabase cho thành viên và snapshot, hosting trên gói miễn phí của Render (ngăn sleep bằng ping của UptimeRobot)
6.473 cây xăng chấp nhận tiền tệ địa phương được nối với dữ liệu công khai của Korea Minting and Security Printing Corporation bằng cách khớp tọa độ 150m+ tên cửa hàng
Chỉ có một cú vấp đáng kể: có ngày 57% cây xăng bị xử lý là 'giữ lại', tôi đào bới mất hai ngày thì ra cổng lọc ngoại lệ "cắt biến động dự đoán 40 won" lại đúng bằng p75 của phân phối thực tế. Tức là cứ 4 trường hợp thì tôi lại coi 1 trường hợp là ngoại lệ. Nâng lên p99.5 là giải quyết được. Tôi đã thực sự cảm nhận rằng ngưỡng nên được đặt theo phân vị chứ không phải theo cảm giác. (Nhật ký phát triển chi tiết: liên kết velog)

Tuần trước tôi đăng một bài trong cộng đồng tiết kiệm và trong hai ngày đã có 730 người ghé qua; 82% người đăng ký là dân đi làm 30–40 tuổi. Có thể dùng mọi chức năng mà không cần đăng ký và tất cả đều miễn phí.

Tôi đang cân nhắc nhiều thứ như dự đoán giá dầu diesel (hiện mới chỉ hỗ trợ tra cứu), hay đơn vị khu vực chi tiết hơn cấp quận/huyện. Hãy thử dùng và nếu có phản hồi như "dự đoán ở khu tôi có gì đó lạ", tôi sẽ kiểm chứng bằng bảng điểm và sửa lại.

Chưa có bình luận nào.

Chưa có bình luận nào.