74 lines
2.2 KiB
Python
74 lines
2.2 KiB
Python
"""
|
|
ЭКОНОМИЧЕСКИЕ ПАРАМЕТРЫ
|
|
"""
|
|
|
|
class EconomyConfig:
|
|
# Налоговая система
|
|
TAX_SYSTEM = {
|
|
'income_tax': [
|
|
{'threshold': 0, 'rate': 0.00},
|
|
{'threshold': 50000, 'rate': 0.10},
|
|
{'threshold': 200000, 'rate': 0.15},
|
|
{'threshold': 500000, 'rate': 0.20},
|
|
{'threshold': 1000000, 'rate': 0.25}
|
|
],
|
|
'wealth_tax': {
|
|
'threshold': 5000000,
|
|
'rate': 0.01
|
|
},
|
|
'monopoly_tax': {
|
|
'threshold': 0.4,
|
|
'rate': 0.03
|
|
},
|
|
'transaction_fee': 0.01,
|
|
'auction_fee': 0.02,
|
|
}
|
|
|
|
# Кредитная система
|
|
LOAN_SYSTEM = {
|
|
'max_loan_multiplier': 10.0,
|
|
'interest_rates': {
|
|
'standard': 0.05,
|
|
'crisis': 0.10,
|
|
'black_market': 0.15,
|
|
},
|
|
'repayment_periods': [3, 6, 12, 24],
|
|
'late_fee': 0.02,
|
|
'default_threshold': 3,
|
|
}
|
|
|
|
# Макроэкономика
|
|
MACROECONOMICS = {
|
|
'base_inflation': 0.005,
|
|
'inflation_multipliers': {
|
|
'crisis': 1.5,
|
|
'boom': 0.7,
|
|
'default': 2.0,
|
|
},
|
|
'central_bank_rate': 0.04,
|
|
}
|
|
|
|
# Корреляции активов - ИСПРАВЛЕНО: ключи-строки вместо кортежей
|
|
ASSET_CORRELATIONS = {
|
|
'stock_gazprom:oil': 0.6,
|
|
'stock_sberbank:stock_gazprom': 0.4,
|
|
'oil:natural_gas': 0.7,
|
|
'apartment_small:apartment_elite': 0.5,
|
|
'gold:bitcoin': -0.3,
|
|
'gov_bonds:stock_gazprom': -0.2,
|
|
}
|
|
|
|
@staticmethod
|
|
def get_correlation(asset1, asset2):
|
|
"""Получить корреляцию между активами"""
|
|
# Пробуем прямой ключ
|
|
key1 = f"{asset1}:{asset2}"
|
|
if key1 in EconomyConfig.ASSET_CORRELATIONS:
|
|
return EconomyConfig.ASSET_CORRELATIONS[key1]
|
|
|
|
# Пробуем обратный ключ
|
|
key2 = f"{asset2}:{asset1}"
|
|
if key2 in EconomyConfig.ASSET_CORRELATIONS:
|
|
return EconomyConfig.ASSET_CORRELATIONS[key2]
|
|
|
|
return 0 # Нет корреляции |