"""Seed cryptocurrencies Revision ID: 002 Revises: 001 Create Date: 2024-01-01 00:01:00.000000 """ from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision = '002' down_revision = '001' branch_labels = None depends_on = None def upgrade() -> None: # Insert popular cryptocurrencies cryptocurrencies_table = sa.table( 'cryptocurrencies', sa.column('symbol', sa.String), sa.column('name', sa.String), sa.column('is_active', sa.Boolean), sa.column('min_trade_amount', sa.Float), sa.column('max_trade_amount', sa.Float), sa.column('precision', sa.Integer) ) op.bulk_insert( cryptocurrencies_table, [ { 'symbol': 'BTC', 'name': 'Bitcoin', 'is_active': True, 'min_trade_amount': 0.00001, 'max_trade_amount': 10.0, 'precision': 8 }, { 'symbol': 'ETH', 'name': 'Ethereum', 'is_active': True, 'min_trade_amount': 0.001, 'max_trade_amount': 100.0, 'precision': 8 }, { 'symbol': 'USDT', 'name': 'Tether', 'is_active': True, 'min_trade_amount': 1.0, 'max_trade_amount': 100000.0, 'precision': 6 }, { 'symbol': 'USDC', 'name': 'USD Coin', 'is_active': True, 'min_trade_amount': 1.0, 'max_trade_amount': 100000.0, 'precision': 6 }, { 'symbol': 'BNB', 'name': 'Binance Coin', 'is_active': True, 'min_trade_amount': 0.01, 'max_trade_amount': 1000.0, 'precision': 8 } ] ) def downgrade() -> None: op.execute("DELETE FROM cryptocurrencies WHERE symbol IN ('BTC', 'ETH', 'USDT', 'USDC', 'BNB')")