commit d71c7b67888f33cb89c84406dfeb156c5f3653bc Author: reinoud Date: Sun Jun 22 22:53:28 2025 +0200 y diff --git a/crypto.py b/crypto.py new file mode 100644 index 0000000..741eab6 --- /dev/null +++ b/crypto.py @@ -0,0 +1,52 @@ +import random +import matplotlib.pyplot as plt + +# Game parameters +# Start price of coin +coin_price = 100.0 +price_sensitivity = 0.5 +volatility = 0.3 +price_history = [coin_price] + +def save_graph(): + plt.clf() + plt.plot(price_history, label="Coin Price") + plt.title("Coin Price Over Time") + plt.xlabel("Turn") + plt.ylabel("Price") + plt.legend() + plt.grid(True) + plt.savefig("coin_price.png") + print("📊 Graph saved as 'coin_price.png'") + +print("💰 Welcome to Crypto Kids! Type +10 to buy or -10 to sell.") +print("Type 'exit' to stop the game.\n") + +while True: + print(f"\nCurrent Coin Price: {round(coin_price, 2)}") + + user_input = input("Enter buy/sell amount (e.g., +10 or -10): ").strip() + if user_input.lower() == "exit": + print("👋 Game Over. Thanks for playing!") + break + + try: + trade_amount = int(user_input) + except ValueError: + print("⚠️ Please enter a valid number like +10 or -5.") + continue + + user_intput = 10 + + buys = trade_amount if trade_amount > 0 else 0 + sells = -trade_amount if trade_amount < 0 else 0 + net_demand = buys - sells + + price_change_from_demand = net_demand * price_sensitivity + random_factor = random.uniform(-volatility, volatility) * coin_price + coin_price += price_change_from_demand + random_factor + coin_price = max(1, coin_price) + + price_history.append(coin_price) + save_graph() + diff --git a/test.py b/test.py new file mode 100644 index 0000000..e43066b --- /dev/null +++ b/test.py @@ -0,0 +1,42 @@ +import random +import matplotlib.pyplot as plt + +# Game parameters +coin_price = 100.0 +price_sensitivity = 0.5 # How much the price reacts to user demand +volatility = 0.3 # Maximum % of price change due to randomness +price_history = [coin_price] + +def save_graph(): + plt.clf() + plt.plot(price_history, label="Coin Price") + plt.title("Coin Price Over Time") + plt.xlabel("Turn") + plt.ylabel("Price") + plt.legend() + plt.grid(True) + plt.savefig("coin_price.png") + print("📊 Graph saved as 'coin_price.png'") + +print("💰 Welcome to Crypto Kids! Simulating user input of 0 each round for testing purposes.\n") + +# Run for 10 rounds +for turn in range(1, 21): + print(f"\nTurn {turn} - Current Coin Price: {round(coin_price, 2)}") + + # Simulated user input: always 0 + trade_amount = 0 + print(f"Simulated input: {trade_amount}") + + buys = trade_amount if trade_amount > 0 else 0 + sells = -trade_amount if trade_amount < 0 else 0 + net_demand = buys - sells + + price_change_from_demand = net_demand * price_sensitivity + random_factor = random.uniform(-volatility, volatility) * coin_price + coin_price += price_change_from_demand + random_factor + coin_price = max(1, coin_price) + + price_history.append(coin_price) + save_graph() +