geostock-analyzer-docs

๐ŸŒ Geopolitical Affinity Score Engine โ€” 1์ธต (Layer 1)

๊ตญ์ œ์ •์„ธ โ†’ ์ฃผ๊ฐ€ ์˜ํ–ฅ ๋ถ„์„๊ธฐ์˜ 1์ธต ๋ชจ๋“ˆ. ๊ตญ๊ฐ€๊ฐ„ ๊ด€๊ณ„์˜ ๊ตฌ์กฐ์  ๋ฐฐ๊ฒฝ์„ ์ธก์ •ํ•˜๋Š” ์—”์ง„.

์—ญํ•  (v2 ์ตœ์ข…์•ˆ)

์„ค์น˜

unzip geopolitical_affinity_package.zip
pip install -e ".[all]"

์ตœ์ดˆ ์…‹์—…

geoaffinity setup fbic ~/Downloads/Diplometrics_FBIC_Index_....csv
geoaffinity setup gdelt

2์ธต ์ธํ„ฐํŽ˜์ด์Šค โ€” ํ•ต์‹ฌ 3๊ฐœ ์ถœ๋ ฅ

1. ์—ฐ๊ฐ„ ๋ฐฐ๊ฒฝ โ€” get_snapshot(year)

geoaffinity snapshot 2024
geoaffinity snapshot --json
from geopolitical_affinity import engine
engine.init()
snap = engine.get_snapshot(2024)
# โ†’ key_indices: us_china, us_russia, china_russia, us_allies_avg,
#                 israel_iran, india_china, russia_ukraine, korea_japan,
#                 korea_china, global_tension

2. ์—ฐ๊ฐ„ ๋ณ€๋™ โ€” get_deltas(year)

geoaffinity deltas 2024
deltas = engine.get_deltas(2024)
# โ†’ significant_changes, grade_transitions, summary

3. ์›”๊ฐ„ ๋งฅ๋ฐ• โ€” get_monthly(months=6)

geoaffinity monthly --months 6
pulse = engine.get_monthly(6)
# โ†’ trends (3m vs 6m ๋ชจ๋ฉ˜ํ…€), key_indices_monthly

๋ฐ์ดํ„ฐ ๊ฐฑ์‹ 

# ์›์Šคํ†ฑ ๊ฐฑ์‹  (GDELT + ์‚ฌ๊ฑด ์ž๋™๊ฐ์ง€ + ์žฌ์ดˆ๊ธฐํ™”)
geoaffinity update              # ์Šน์ธ ๋ชจ๋“œ
geoaffinity update --auto       # ์ž๋™ ๋ชจ๋“œ

# ์‚ฌ๊ฑด๋งŒ ๊ฐฑ์‹ 
geoaffinity update --events-only

# ์‚ฌ๊ฑด ๋ถ„์„
geoaffinity scan --days 30
geoaffinity analyze "๋ถํ•œ์ด ICBM์„ ๋ฐœ์‚ฌํ–ˆ๋‹ค"

๊ฒ€์ฆ ๊ฒฐ๊ณผ

๊ฒ€์ฆ ์ ์ค‘๋ฅ 
๋“ฑ๊ธ‰ ์ ์ค‘ 73%
๋ฐฉํ–ฅ ์ ์ค‘ 87%
์ˆœ์œ„ ์ ์ค‘ 100%
์ข…ํ•ฉ 87%

โš ๏ธ ์ด ์ˆ˜์น˜๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ๋ถ€์žฌ ์ƒํƒœ๋กœ ์ธ์šฉ๋จ: ๊ฒ€์ฆ ๋ฐ์ดํ„ฐ์…‹ยทํ‘œ๋ณธ ํฌ๊ธฐ(n)ยทbaseline(random %)ยท์ธก์ •์ผยท์ธก์ •์ž ๋ชจ๋‘ ๋ฏธ๋ช…์‹œ. ๋งˆ์ผ€ํŒ… ์ž๋ฃŒ ์‚ฌ์šฉ ๊ธˆ์ง€. ์ž์„ธํ•œ ํ•œ๊ณ„๋Š” LIMITATIONS.md ์ฐธ์กฐ. ์‹ ๊ทœ ์ธก์ • (21-case harness + baseline) ํ›„ ์žฌ๊ฒŒ์‹œ ์˜ˆ์ •.