Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import powerstand
- psm = powerstand.init()
- #psm = powerstand.init_test()
- '''
- psm.orders.line_on("m5", 1)
- psm.orders.line_on("m5", 2)
- psm.orders.line_on("e3", 1)
- psm.orders.line_on("e3", 2)
- psm.orders.line_on("e3", 3)
- '''
- print("Фактические контракты:")
- for receipt in psm.exchange:
- print("Контрагент:", receipt.agent)
- # None = оператор, иначе это другой игрок
- print("Объём:", receipt.flux)
- # Плюс = покупка, минус = продажа
- print("Цена за МВт:", receipt.price)
- print("")
- if psm.tick >= 0 and psm.tick <= 2:
- psm.orders.buy(5, 5)
- '''
- if psm.tick >= 44 and psm.tick <= 48:
- psm.orders.buy(2, 5)
- '''
- def get_con():
- total = 0
- total += psm.forecasts.house[psm.tick + 2].upper0 * 2
- total += psm.forecasts.factory[psm.tick + 2].upper0
- total += psm.forecasts.hospital[psm.tick + 2].upper0 * 2
- return total
- def get_gen():
- total = 0
- for obj in psm.objects:
- if obj.type == "wind" and obj.power.now.generated > 0:
- total += psm.forecasts.wind[psm.tick + 2].upper0
- break
- total += psm.forecasts.sun[psm.tick + 2].upper0 * 2
- return total
- try:
- if get_gen() - get_con() > 0:
- psm.orders.sell(get_gen() - get_con(), 7)
- elif get_gen() - get_con() < 0:
- psm.orders.buy(abs(get_gen() - get_con()), 1)
- except Exception as e:
- print(e)
- pass
- '''
- if psm.total_power.generated-psm.total_power.consumed < 0:
- psm.orders.diesel("M3", min(5, abs(psm.total_power.generated-psm.total_power.consumed)))
- elif psm.total_power.generated-psm.total_power.consumed > 0:
- psm.orders.sell(psm.total_power.generated-psm.total_power.consumed, receipt.price-0.89)
- if psm.total_power.generated-psm.total_power.consumed < 0:
- psm.orders.buy(abs(psm.total_power.generated-psm.total_power.consumed), receipt.price+0.9)
- '''
- psm.save_and_exit()
- #print("\n".join(psm.orders.humanize()))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement