Advertisement
MagicWinnie

Untitled

Mar 12th, 2020
538
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.14 KB | None | 0 0
  1. import powerstand
  2. psm = powerstand.init()
  3. # psm = powerstand.init_test()
  4.  
  5. # print("Сила ветра:", psm.wind.now)
  6. print("Фактические контракты:")
  7. for receipt in psm.exchange:
  8.     print("Контрагент:", receipt.agent)
  9.     # None = оператор, иначе это другой игрок
  10.     print("Объём:", receipt.flux)
  11.     # Плюс = покупка, минус = продажа
  12.     print("Цена за МВт:", receipt.price)
  13.     print("")
  14.  
  15. #psm.orders.line_on("m5", 1)
  16.  
  17. price_sell = 0.9
  18. price_buy = 0.8
  19.  
  20.  
  21. if psm.total_power.generated-psm.total_power.consumed < 0:
  22.     psm.orders.discharge("M3", min(10, psm.total_power.generated-psm.total_power.consumed))
  23.  
  24. if psm.total_power.generated-psm.total_power.consumed < 0:
  25.     if 4*(psm.total_power.consumed - psm.total_power.generated) > (psm.total_power.consumed-psm.total_power.generated)*(receipt.price + price_buy):
  26.         psm.orders.buy(abs(psm.total_power.generated-psm.total_power.consumed), receipt.price + price_buy)
  27.         if psm.total_power.generated-psm.total_power.consumed < 0:
  28.             psm.orders.diesel("M3", min(5, abs(psm.total_power.generated-psm.total_power.consumed)))
  29.     else:
  30.         psm.orders.diesel("M3", min(5, abs(psm.total_power.generated-psm.total_power.consumed)))
  31.         if psm.total_power.generated - psm.total_power.consumed < 0:
  32.             psm.orders.buy(abs(psm.total_power.generated-psm.total_power.consumed), receipt.price + price_buy)
  33. elif psm.total_power.generated-psm.total_power.consumed > 0:
  34.     if psm.total_power.generated-psm.total_power.consumed > 10:
  35.         psm.orders.charge("M3", 10)
  36.         psm.orders.sell(psm.total_power.generated-psm.total_power.consumed, receipt.price - price_sell)
  37.     else:
  38.         temp = (psm.total_power.generated-psm.total_power.consumed)/2
  39.         psm.orders.charge("M3", temp)
  40.         psm.orders.sell(temp, receipt.price - price_sell)
  41.        
  42. if psm.total_power.generated-psm.total_power.consumed < 0:
  43.     psm.orders.buy(abs(psm.total_power.generated-psm.total_power.consumed), receipt.price + price_buy)
  44.  
  45. psm.save_and_exit()
  46. # print("\n".join(psm.orders.humanize()))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement