2D History 72 Updated: 2026-09-29 12:01:02 12:...
Создано: 29 сентября 2026 г.
Отвечено с использованием GPT-5.6 Thinking от Chat01
Создано: 29 сентября 2026 г.
Отвечено с использованием GPT-5.6 Thinking от Chat01
2D History
72
Updated: 2026-09-29 12:01:02
12:01:39
1596.27
42222.90
72
12:01:35
1596.27
42222.84
72
12:01:32
1596.27
42222.84
72
12:01:29
1596.27
42222.84
72
12:01:26
1596.27
42222.84
72
12:01:22
1596.27
42222.47
72
12:01:18
1596.27
42222.47
72
12:01:13
1596.27
42222.36
72
12:01:09
1596.27
42222.36
72
12:01:05
1596.27
42222.36
72
12:01:02
1596.27
42222.36
72
12:00:59
1596.27
42222.36
72
12:00:49
1596.27
42221.21
71
12:00:37
1596.27
42221.20
71
12:00:34
1596.27
42221.21
71
12:00:27
1596.27
42221.20
71
12:00:22
1596.27
42219.83
79
12:00:09
1597.11
42208.73
18
11:59:46
1596.54
42191.87
41
11:59:36
1596.66
42173.15
63
11:59:33
1596.54
42173.15
43
Thai ဈေးကွက်မှာ 12:01 မှာ 72 ထွက်သွားတယ်။ ဘယ်လိုမျိုးခန့်မန်းနိုင်မလဲ။ python code နဲ့ကောခန့်မန်းနိုင်မလား သူကြိမ်နှုန်းနဲလားဘယ်လိုမျိူးလဲ။ စဉ်းစားပြီးရေးပေးပါ
ဒီ data ကိုကြည့်ရင် 72 က random number လို့မထင်ဘဲ market values နှစ်ခုကနေ တိုက်ရိုက်ဖွဲ့ထားတာ လို့ မြင်ရပါတယ်။ အရင်ဆုံး formula ကို data နဲ့စစ်ပြီး၊ ပြီးရင် frequency/transition နဲ့ “နောက်တစ်ကြိမ်ဖြစ်နိုင်ချေ” ကို Python နဲ့ဘယ်လောက်ထိခန့်မှန်းလို့ရမလဲ ခွဲပြမယ်။
pythonrows = [ ("12:01:39",72,1596.27,42222.90), ("12:01:35",72,1596.27,42222.84), ("12:01:32",72,1596.27,42222.84), ("12:01:29",72,1596.27,42222.84), ("12:01:26",72,1596.27,42222.84), ("12:01:22",72,1596.27,42222.47), ("12:01:18",72,1596.27,42222.47), ("12:01:13",72,1596.27,42222.36), ("12:01:09",72,1596.27,42222.36), ("12:01:05",72,1596.27,42222.36), ("12:01:02",72,1596.27,42222.36), ("12:00:59",72,1596.27,42222.36), ("12:00:49",71,1596.27,42221.21), ("12:00:37",71,1596.27,42221.20), ("12:00:34",71,1596.27,42221.21), ("12:00:27",71,1596.27,42221.20), ("12:00:22",79,1596.27,42219.83), ("12:00:09",18,1597.11,42208.73), ("11:59:46",41,1596.54,42191.87), ("11:59:36",66,1596.66,42173.15), ("11:59:33",43,1596.54,42173.15), ] def calc(index, value): a = int(round(index*100)) % 10 # hundredth digit of index b = int(value) % 10 # units digit of integer value return 10*a+b [(t,n,calc(i,v), n==calc(i,v)) for t,n,i,v in rows] [('12:01:39', 72, 72, True), ('12:01:35', 72, 72, True), ('12:01:32', 72, 72, True), ('12:01:29', 72, 72, True), ('12:01:26', 72, 72, True), ('12:01:22', 72, 72, True), ('12:01:18', 72, 72, True), ('12:01:13', 72, 72, True), ('12:01:09', 72, 72, True), ('12:01:05', 72, 72, True), ('12:01:02', 72, 72, True), ('12:00:59', 72, 72, True), ('12:00:49', 71, 71, True), ('12:00:37', 71, 71, True), ('12:00:34', 71, 71, True), ('12:00:27', 71, 71, True), ('12:00:22', 79, 79, True), ('12:00:09', 18, 18, True), ('11:59:46', 41, 41, True), ('11:59:36', 66, 63, False), ('11:59:33', 43, 43, True)]
pythonrows = [ ("12:01:39",72,1596.27,42222.90), ("12:01:35",72,1596.27,42222.84), ("12:01:32",72,1596.27,42222.84), ("12:01:29",72,1596.27,42222.84), ("12:01:26",72,1596.27,42222.84), ("12:01:22",72,1596.27,42222.47), ("12:01:18",72,1596.27,42222.47), ("12:01:13",72,1596.27,42222.36), ("12:01:09",72,1596.27,42222.36), ("12:01:05",72,1596.27,42222.36), ("12:01:02",72,1596.27,42222.36), ("12:00:59",72,1596.27,42222.36), ("12:00:49",71,1596.27,42221.21), ("12:00:37",71,1596.27,42221.20), ("12:00:34",71,1596.27,42221.21), ("12:00:27",71,1596.27,42221.20), ("12:00:22",79,1596.27,42219.83), ("12:00:09",18,1597.11,42208.73), ("11:59:46",41,1596.54,42191.87), ("11:59:36",63,1596.66,42173.15), ("11:59:33",43,1596.54,42173.15), ] from collections import Counter cnt = Counter(n for _,n,_,_ in rows) cnt Counter({72: 12, 71: 4, 79: 1, 18: 1, 41: 1, 63: 1, 43: 1})
သင့် sample ထဲမှာ အရေးကြီးတဲ့ pattern တစ်ခု ရှင်းပါတယ် — 1596.27 + 42222.90 → 72, 1596.27 + 42221.21 → 71, 1596.27 + 42219.83 → 79 ဆိုပြီး တိတိကျကျလိုက်နေပါတယ်။ ဒါကြောင့် “72 ကိုခန့်မှန်းတာ” နဲ့ “72 ကိုတွက်ထုတ်တာ” ကို ခွဲထားရပါမယ်။
သင့် data ကို သေချာခွဲကြည့်ရင် 12:01 မှာ 72 ထွက်တာကို frequency ကနေတန်းခန့်မှန်းတာထက် SET + Value နှစ်ခုရဲ့ နောက်ဆုံး digit ကို ခန့်မှန်းတာက ပိုမှန်တဲ့ approach ဖြစ်ပါတယ်။
သင်ပေးထားတဲ့ data မှာ pattern က ဒီလို တိတိကျကျ ကိုက်ပါတယ်။
2D = SET ရဲ့ ဒဿမနောက်ဆုံး digit + Value ရဲ့ integer နောက်ဆုံး digit
ဥပမာ—
1596.27 → SET digit = 742222.90 → integer part 42222 → last digit = 2တခြား row တွေနဲ့လည်း စစ်လို့ရပါတယ်။
1596.27 / 42221.21 → 711596.27 / 42219.83 → 791597.11 / 42208.73 → 181596.54 / 42191.87 → 411596.66 / 42173.15 → 63ဒီအချက်က သင်ပေးထားတဲ့ sample အားလုံးနီးပါးမဟုတ်ဘဲ အားလုံးနဲ့ ကိုက်ပါတယ်။ ဒါပေမယ့် ဒီဟာကို official 2D rule လို့ ကျွန်တော် မဆိုလိုပါဘူး; သင်ပေးထားတဲ့ dataset ကနေ တွေ့ရတဲ့ deterministic relationship ဖြစ်ပါတယ်။ SET က Index နဲ့ market Value ကို သီးခြား market metrics အဖြစ် ထုတ်ပေးထားပါတယ်။ (SET)
သင့် sample 21 rows ကို raw frequency ရေတွက်ရင်—
72 = 12 ကြိမ် ≈ 57.1%71 = 4 ကြိမ် ≈ 19.0%79, 18, 41, 63, 43 = တစ်ကြိမ်စီဒီအတိုင်းကြည့်ရင် “72 အရမ်းအားကောင်းတယ်” လို့ ထင်စရာရှိပါတယ်။ ဒါပေမယ့် တကယ်က 72 ဖြစ်ပြီးနောက် market value မပြောင်းသလောက် snapshot ကို 3–4 စက္ကန့်တစ်ကြိမ် ထပ်မှတ်ထားတာပါ။
Consecutive duplicates ဖယ်လိုက်ရင် sequence က—
43 → 63 → 41 → 18 → 79 → 71 → 72
ဆိုတော့ 72 က 12 ကြိမ် independent ဖြစ်တာမဟုတ်ပါဘူး။ တစ်ခုတည်းသော state ကို 12 snapshots တွေ့တာပါ။
ဒါကြောင့် raw frequency ထက် state changes / fixed-time sampling / transition frequency ကိုသုံးတာ ပိုကောင်းပါတယ်။
pythonfrom decimal import Decimal def calculate_2d(set_index, value): # SET decimal နောက်ဆုံး digit s = Decimal(str(set_index)).quantize(Decimal("0.00")) set_digit = int(str(s)[-1]) # Value integer part နောက်ဆုံး digit value_digit = int(Decimal(str(value))) % 10 return set_digit * 10 + value_digit print(calculate_2d(1596.27, 42222.90)) # 72 print(calculate_2d(1596.27, 42221.21)) # 71 print(calculate_2d(1597.11, 42208.73)) # 18
ဒါက prediction မဟုတ်သေးပါဘူး။ လက်ရှိ SET / Value ရလာတာနဲ့ 2D ကိုတွက်တာပဲ ဖြစ်ပါတယ်။
တကယ့် prediction က ဥပမာ 12:00:45 မှာနေပြီး 12:01 final က ဘာဖြစ်မလဲ ဆိုတာ ကြိုတွက်ချင်တာပါ။
အဲဒီအခါ 2D ကို တိုက်ရိုက် predict မလုပ်ဘဲ—
SET ရဲ့ နောက်ဆုံး digit ဘာဖြစ်နိုင်လဲ?
Value ရဲ့ integer နောက်ဆုံး digit ဘာဖြစ်နိုင်လဲ?
ဆိုပြီး နှစ်ပိုင်းခွဲတာ ပိုကောင်းပါတယ်။
12:00:49 မှာ—
1596.27 / 42221.21 → 71
ဒါပေမယ့် 12:00:59 မှာ—
1596.27 / 42222.36 → 72
ဖြစ်သွားပါတယ်။
ဒီမှာ SET digit 7 က မပြောင်းဘူး။ Value integer 42221 → 42222 ပြောင်းသွားလို့ 71 → 72 ဖြစ်တာပါ။
ဒါကြောင့် ဒီ case မှာ 72 ရဲ့ key factor က SET မဟုတ်ဘဲ Value ရဲ့ integer boundary crossing ဖြစ်တယ်။
ဒီလို feature ကို model ထဲထည့်တာက 72 မကြာခဏထွက်တယ် လို့ frequency ရေတွက်တာထက်ပိုအသုံးဝင်ပါတယ်။
pythonimport pandas as pd data = [ ("11:59:33", 1596.54, 42173.15), ("11:59:36", 1596.66, 42173.15), ("11:59:46", 1596.54, 42191.87), ("12:00:09", 1597.11, 42208.73), ("12:00:22", 1596.27, 42219.83), ("12:00:27", 1596.27, 42221.20), ("12:00:34", 1596.27, 42221.21), ("12:00:37", 1596.27, 42221.20), ("12:00:49", 1596.27, 42221.21), ("12:00:59", 1596.27, 42222.36), ("12:01:02", 1596.27, 42222.36), ("12:01:05", 1596.27, 42222.36), ("12:01:09", 1596.27, 42222.36), ("12:01:13", 1596.27, 42222.36), ("12:01:18", 1596.27, 42222.47), ("12:01:22", 1596.27, 42222.47), ("12:01:26", 1596.27, 42222.84), ("12:01:29", 1596.27, 42222.84), ("12:01:32", 1596.27, 42222.84), ("12:01:35", 1596.27, 42222.84), ("12:01:39", 1596.27, 42222.90), ] df = pd.DataFrame(data, columns=["time", "set", "value"]) # digits df["set_digit"] = ( df["set"].map(lambda x: int(f"{x:.2f}"[-1])) ) df["value_digit"] = ( df["value"].astype(int) % 10 ) df["2d"] = ( df["set_digit"] * 10 + df["value_digit"] ) print(df)
ပြီးရင် raw frequency—
pythonprint( df["2d"] .value_counts(normalize=True) .mul(100) .round(2) )
ဒါပေမယ့် ဒီ frequency ကို prediction probability လို့ မယူပါနဲ့။
Consecutive repeated states ဖယ်ချင်ရင်—
pythonchanges = df[ df["2d"].ne(df["2d"].shift()) ].copy() print(changes[["time", "set", "value", "2d"]])
ဒီ sample မှာ အဓိက state changes က—
text43 63 41 18 79 71 72
လိုဖြစ်သွားမယ်။
Historical data အများကြီးရှိရင်
လက်ရှိ 71 ဖြစ်ရင် နောက် state က ဘာဖြစ်တတ်လဲ
လို transition probability တွက်နိုင်ပါတယ်။
pythonevents = df[ df["2d"].ne(df["2d"].shift()) ].copy() events["next_2d"] = events["2d"].shift(-1) transition = pd.crosstab( events["2d"], events["next_2d"], normalize="index" ) print(transition)
Historical data အများကြီးရှိပြီဆိုရင်—
pythoncurrent = 71 if current in transition.index: candidates = ( transition.loc[current] .sort_values(ascending=False) .head(10) ) print(candidates)
ဒီကနေ ဥပမာ hypothetical အနေနဲ့
text72 0.18 70 0.14 73 0.12 79 0.08 ...
လိုရနိုင်ပါတယ်။
ဒါပေမယ့် သင့်လက်ရှိ 21 rows နဲ့ ဒီ model သုံးရင် sample နည်းလွန်းပါတယ်။
တကယ်စမ်းသပ်သင့်တာက—
12:00:30 result → 12:01 result တူတဲ့ %
12:00:45 result → 12:01 result တူတဲ့ %
12:00:50 result → 12:01 result တူတဲ့ %
12:00:55 result → 12:01 result တူတဲ့ %
12:00:59 result → 12:01 result တူတဲ့ %
ကို နေ့ပေါင်းရာချီ ရေတွက်တာပါ။
ဥပမာ 300 trading days ရှိပြီး 12:00:55 မှာရှိတဲ့ 2D ဟာ 12:01 final နဲ့ 135 ရက်တူတယ်ဆိုရင်—
135 / 300 = 45%
အဲဒီ 45% က “လက်ရှိ number ဆက်တည်နိုင်ချေ” ကို အနည်းဆုံး historical estimate တစ်ခု ပေးနိုင်ပါတယ်။
ဒီ statistic က 72 ဘယ်နှကြိမ်ထွက်လဲ ထက် အများကြီးပိုအသုံးဝင်ပါတယ်။
အရေးကြီးဆုံး features တွေက—
SET digitValue digitဥပမာ 42221.87 ဆိုပါစို့။
နောက် integer 42222.00 ရောက်ဖို့ 0.13 ပဲလိုတော့တာကြောင့် Value last digit 1 → 2 ပြောင်းနိုင်တာကို model က သတိထားသင့်ပါတယ်။
ဒါဟာ raw frequency မှာ မမြင်နိုင်တဲ့ information ပါ။
အဓိက takeaway က — 2D ကို 00–99 တစ်ခုတည်းအနေနဲ့ ခန့်မှန်းတာထက် SET digit တစ်လုံး + Value digit တစ်လုံးကို သီးခြား forecast လုပ်ပြီး ပြန်ပေါင်းတာ ပိုသင့်တော်ပါတယ်။ Frequency တစ်ခုတည်း၊ pattern တစ်ခုတည်းနဲ့ အနာဂတ်ကို အာမခံမနိုင်ပါဘူး; historical data ကို train/test days ခွဲပြီး backtest လုပ်မှ model က တကယ်အကျိုးရှိ/မရှိ သိနိုင်ပါတယ်။
သင့်မှာ တစ်ပတ်/တစ်လ/လပေါင်းများစွာရဲ့ 2D History data ရှိရင် CSV/Excel အနေနဲ့ပေးနိုင်ပါတယ်။ အဲဒီ data ကိုအခြေခံပြီး 12:01 prediction အတွက် frequency + transition + time-to-draw + backtest ပါတဲ့ Python model ပုံစံကို တိတိကျကျ ဆောက်ပုံရေးပြနိုင်ပါတယ်။