File size: 1,975 Bytes
46a5be3
 
1954a4a
46a5be3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1954a4a
46a5be3
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
e43fe01
 
1954a4a
 
e43fe01
1954a4a
e43fe01
1954a4a
 
e43fe01
1954a4a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
import yfinance as yf

# ์ƒ˜ํ”Œ์šฉ Catalog
product_catalog = {
    "807ZPKBL9V": "SuperWidget",
    "1234567890": "MegaGadget"
}

def get_product_name_by_PID(PID: str) -> str:
    """
    Finds the name of a product by its Product ID
    """
    return product_catalog.get(PID, "Unknown product")

def get_stock_price(ticker: str) -> float:
    """
    Retrieves the latest stock price for a given ticker using yfinance.
    """
    stock = yf.Ticker(ticker)
    data = stock.history(period="1d")
    if not data.empty:
        return data['Close'].iloc[-1]
    return float('nan')

# ----------------------------------------------------
# MCO ์•„ํ‚คํ…์ฒ˜ ๋ถ„์„์šฉ ํ•จ์ˆ˜ (์˜ˆ์‹œ)
# ----------------------------------------------------
def analyze_mco_architecture(framework_version: str, detail_level: int = 3) -> str:
    """
    MCO ์•„ํ‚คํ…์ฒ˜(ํ•จ์ˆ˜ JSON + Python ๋ชจ๋“ˆ) ๊ตฌ์กฐ๋ฅผ ๋ถ„์„ ๋ฐ ์š”์•ฝํ•ด์ฃผ๋Š” ํ•จ์ˆ˜.
    """
    if detail_level < 1:
        detail_level = 1
    elif detail_level > 5:
        detail_level = 5

    analysis = (
        f"MCO ์•„ํ‚คํ…์ฒ˜(๋ฒ„์ „ {framework_version}) ๋ถ„์„ ๊ฒฐ๊ณผ:\n"
        f" - functions.json์— ์ •์˜๋œ ํ•จ์ˆ˜ ๋ชฉ๋ก ํ™•์ธ\n"
        f" - Python ๋ชจ๋“ˆ({__file__})์—์„œ ํ•จ์ˆ˜ ๊ตฌํ˜„ ์ •์ƒ ์—ฐ๊ฒฐ ํ™•์ธ\n"
        f" - detail_level={detail_level} ๊ธฐ์ค€์œผ๋กœ ์š”์•ฝ ๋ฆฌํฌํŠธ\n"
        f"โ€ป ์‹ค์ œ๋กœ๋Š” ํ•„์š”์— ๋”ฐ๋ผ ๋” ๋ณต์žกํ•œ ๋กœ์ง/ํŒŒ์ผ ๋ถ„์„ ๋“ฑ ์ˆ˜ํ–‰ ๊ฐ€๋Šฅ."
    )
    return analysis

# ----------------------------------------------------
# [์ถ”๊ฐ€] functionName(...)
#  - ๋ชจ๋ธ์ด functionName(string="AAPL")๋ผ๊ณ  ์ฝœํ•˜๋ฉด ๋‚ด๋ถ€์ ์œผ๋กœ get_stock_price(ticker=string)์„ ํ˜ธ์ถœ.
# ----------------------------------------------------
def functionName(string: str) -> float:
    """
    ์ž„์‹œ ํ˜ธํ™˜์šฉ ํ•จ์ˆ˜. 
    ๋ชจ๋ธ์ด functionName(string="...")์„ ํ˜ธ์ถœํ•˜๋ฉด, get_stock_price(ticker=...)๋ฅผ ๋Œ€์‹  ํ˜ธ์ถœํ•˜์—ฌ ๋ฐ˜ํ™˜.
    """
    return get_stock_price(ticker=string)