﻿{
    "site": "saihuay",
    "page_type": "lucky_number_analysis",
    "canonical_url": "https://saihuay.com/lucky_data?lotto=hanoi_vip",
    "generated_at": "2026-05-16T13:18:07+00:00",
    "market_slug": "hanoi_vip",
    "market_name_th": "Hanoi VIP",
    "market_display_name": "Hanoi VIP",
    "analysis_limit": 120,
    "prediction_basis": 68,
    "latest_row": {
        "draw_date": "2026-05-16",
        "top_3": "772",
        "bottom_2": "01",
        "first_prize": "",
        "draw_result": "99772"
    },
    "next_draw": {
        "display": "May 17, 2026",
        "note": "Daily draws",
        "cutoff": "Results around 19:30"
    },
    "trend_scores": {
        "top_3": 20.4,
        "bottom_2": 16
    },
    "top_3_analysis": {
        "valid_rows": 68,
        "positions": [
            {
                "label": "Hundreds",
                "top_digit": "0",
                "top_percent": 15.7,
                "top_digits": [
                    {
                        "digit": "0",
                        "percent": 15.7
                    },
                    {
                        "digit": "7",
                        "percent": 14.8
                    },
                    {
                        "digit": "3",
                        "percent": 12.4
                    },
                    {
                        "digit": "6",
                        "percent": 12
                    },
                    {
                        "digit": "1",
                        "percent": 10.9
                    }
                ]
            },
            {
                "label": "Tens",
                "top_digit": "7",
                "top_percent": 17.5,
                "top_digits": [
                    {
                        "digit": "7",
                        "percent": 17.5
                    },
                    {
                        "digit": "3",
                        "percent": 16.1
                    },
                    {
                        "digit": "8",
                        "percent": 15
                    },
                    {
                        "digit": "5",
                        "percent": 13.7
                    },
                    {
                        "digit": "0",
                        "percent": 11.2
                    }
                ]
            },
            {
                "label": "Units",
                "top_digit": "2",
                "top_percent": 27.9,
                "top_digits": [
                    {
                        "digit": "2",
                        "percent": 27.9
                    },
                    {
                        "digit": "3",
                        "percent": 21.1
                    },
                    {
                        "digit": "4",
                        "percent": 16.5
                    },
                    {
                        "digit": "6",
                        "percent": 10.1
                    },
                    {
                        "digit": "9",
                        "percent": 8.5
                    }
                ]
            }
        ],
        "window_highlights": [
            {
                "label": "Short term",
                "size": 20,
                "digits": "772",
                "average_percent": 24
            },
            {
                "label": "Mid term",
                "size": 60,
                "digits": "382",
                "average_percent": 18
            },
            {
                "label": "Overall",
                "size": 120,
                "digits": "382",
                "average_percent": 17.9
            }
        ],
        "candidates": [
            {
                "digits": "072",
                "trend_percent": 100
            },
            {
                "digits": "772",
                "trend_percent": 94.3
            },
            {
                "digits": "032",
                "trend_percent": 92
            },
            {
                "digits": "732",
                "trend_percent": 86.7
            },
            {
                "digits": "082",
                "trend_percent": 85.7
            },
            {
                "digits": "782",
                "trend_percent": 80.8
            }
        ]
    },
    "bottom_2_analysis": {
        "valid_rows": 68,
        "positions": [
            {
                "label": "Bottom Tens",
                "top_digit": "3",
                "top_percent": 15.6,
                "top_digits": [
                    {
                        "digit": "3",
                        "percent": 15.6
                    },
                    {
                        "digit": "1",
                        "percent": 12
                    },
                    {
                        "digit": "9",
                        "percent": 11.8
                    },
                    {
                        "digit": "7",
                        "percent": 11.5
                    },
                    {
                        "digit": "0",
                        "percent": 10.1
                    }
                ]
            },
            {
                "label": "Bottom Units",
                "top_digit": "5",
                "top_percent": 16.3,
                "top_digits": [
                    {
                        "digit": "5",
                        "percent": 16.3
                    },
                    {
                        "digit": "9",
                        "percent": 14.6
                    },
                    {
                        "digit": "0",
                        "percent": 12.5
                    },
                    {
                        "digit": "1",
                        "percent": 10.8
                    },
                    {
                        "digit": "2",
                        "percent": 10.2
                    }
                ]
            }
        ],
        "window_highlights": [
            {
                "label": "Short term",
                "size": 20,
                "digits": "35",
                "average_percent": 17.1
            },
            {
                "label": "Mid term",
                "size": 60,
                "digits": "35",
                "average_percent": 15
            },
            {
                "label": "Overall",
                "size": 120,
                "digits": "75",
                "average_percent": 14.9
            }
        ],
        "candidates": [
            {
                "digits": "35",
                "trend_percent": 100
            },
            {
                "digits": "39",
                "trend_percent": 89.6
            },
            {
                "digits": "15",
                "trend_percent": 76.9
            },
            {
                "digits": "30",
                "trend_percent": 76.7
            },
            {
                "digits": "95",
                "trend_percent": 75.6
            },
            {
                "digits": "75",
                "trend_percent": 73.7
            }
        ]
    },
    "hot_digits": [
        {
            "digit": "3",
            "count": 0,
            "percent": 12.9
        },
        {
            "digit": "2",
            "count": 0,
            "percent": 11
        },
        {
            "digit": "8",
            "count": 0,
            "percent": 10.7
        },
        {
            "digit": "7",
            "count": 0,
            "percent": 10.4
        },
        {
            "digit": "6",
            "count": 0,
            "percent": 9.6
        },
        {
            "digit": "0",
            "count": 0,
            "percent": 9.4
        }
    ],
    "related_urls": {
        "latest_results_url": "https://saihuay.com/result",
        "historical_url": "https://saihuay.com/historical?lotto=hanoi_vip",
        "lucky_url": "https://saihuay.com/lucky_data?lotto=hanoi_vip"
    },
    "disclaimer": "Statistical analysis based on historical data; not a guaranteed prediction.",
    "error_message": ""
}