devel #11

Merged
Arsen Mirzaev Tatyano-Muradovich merged 47 commits from Alex/stcs:devel into stable 2025-10-11 11:58:37 +07:00
38 changed files with 1492 additions and 1693 deletions
Showing only changes of commit 3533e7e99a - Show all commits

View File

@@ -35,13 +35,7 @@ main_menu = InlineKeyboardMarkup(
text="Сменить торговую пару", callback_data="change_symbol" text="Сменить торговую пару", callback_data="change_symbol"
) )
], ],
[InlineKeyboardButton(text="Мои сделки", callback_data="my_deals")],
[InlineKeyboardButton(text="Начать торговлю", callback_data="start_trading")], [InlineKeyboardButton(text="Начать торговлю", callback_data="start_trading")],
[
InlineKeyboardButton(
text="Остановить торговлю", callback_data="stop_trading"
)
],
] ]
) )
@@ -67,62 +61,39 @@ main_settings = InlineKeyboardMarkup(
# additional_settings # additional_settings
def get_additional_settings_keyboard( def get_additional_settings_keyboard(mode: str
current_order_type: str, conditional_order: str
) -> InlineKeyboardMarkup: ) -> InlineKeyboardMarkup:
""" """
Create keyboard for additional settings Create keyboard for additional settings
:param current_order_type: Market, Limit or Conditional :param mode: Trade mode
:param conditional_order: Market or Limit
:return: InlineKeyboardMarkup :return: InlineKeyboardMarkup
""" """
buttons = [ buttons = [
[ [
InlineKeyboardButton(text="Режим позиции", callback_data="trade_mode"), InlineKeyboardButton(text="Режим торговли", callback_data="trade_mode"),
InlineKeyboardButton(text="Тип маржи", callback_data="margin_type"), InlineKeyboardButton(text="Тип маржи", callback_data="margin_type"),
], ],
[ [
InlineKeyboardButton( InlineKeyboardButton(
text="Размер кредитного плеча", callback_data="leverage" text="Размер кредитного плеча", callback_data="leverage"
), ),
InlineKeyboardButton(text="Тип ордера", callback_data="order_type"), InlineKeyboardButton(
text="Базовая ставка", callback_data="order_quantity"),
], ],
[ [
InlineKeyboardButton(
text="Количество ордера", callback_data="order_quantity"
),
InlineKeyboardButton( InlineKeyboardButton(
text="Коэффициент мартингейла", callback_data="martingale_factor" text="Коэффициент мартингейла", callback_data="martingale_factor"
), ),
InlineKeyboardButton(text="Триггер цена", callback_data="trigger_price"
),
], ],
] ]
if current_order_type == "Conditional": if mode == "Switch":
buttons.append( buttons.append(
[ [InlineKeyboardButton(text="Направление первой сделки", callback_data="switch_side_start")]
InlineKeyboardButton(
text="Тип условного ордера", callback_data="conditional_order_type"
)
]
)
buttons.append(
[InlineKeyboardButton(text="Триггер цена", callback_data="trigger_price")]
)
if conditional_order == "Limit":
buttons.append(
[
InlineKeyboardButton(
text="Цена лимитного ордера", callback_data="limit_price"
)
]
)
elif current_order_type == "Limit":
buttons.append(
[
InlineKeyboardButton(
text="Цена лимитного ордера", callback_data="limit_price"
)
]
) )
buttons.append( buttons.append(
@@ -143,40 +114,31 @@ def get_additional_settings_keyboard(
return InlineKeyboardMarkup(inline_keyboard=buttons) return InlineKeyboardMarkup(inline_keyboard=buttons)
order_type = InlineKeyboardMarkup(
inline_keyboard=[
[
InlineKeyboardButton(text="Рыночный", callback_data="Market"),
InlineKeyboardButton(text="Лимитный", callback_data="Limit"),
],
[InlineKeyboardButton(text="Условный", callback_data="Conditional")],
[
InlineKeyboardButton(text="Назад", callback_data="additional_settings"),
InlineKeyboardButton(text="На главную", callback_data="profile_bybit"),
],
]
)
conditional_order_type = InlineKeyboardMarkup(
inline_keyboard=[
[
InlineKeyboardButton(text="Рыночный", callback_data="set_market"),
InlineKeyboardButton(text="Лимитный", callback_data="set_limit"),
],
[
InlineKeyboardButton(text="Назад", callback_data="additional_settings"),
InlineKeyboardButton(text="На главную", callback_data="profile_bybit"),
],
]
)
trade_mode = InlineKeyboardMarkup( trade_mode = InlineKeyboardMarkup(
inline_keyboard=[ inline_keyboard=[
[ [
InlineKeyboardButton( InlineKeyboardButton(
text="Односторонний режим", callback_data="Merged_Single" text="Лонг", callback_data="Long"
),
InlineKeyboardButton(text="Шорт", callback_data="Short"),
InlineKeyboardButton(text="Свитч", callback_data="Switch"),
],
[
InlineKeyboardButton(text="Назад", callback_data="additional_settings"),
InlineKeyboardButton(text="На главную", callback_data="profile_bybit"),
],
]
)
switch_side = InlineKeyboardMarkup(
inline_keyboard=[
[
InlineKeyboardButton(
text="По направлению", callback_data="switch_direction"
),
InlineKeyboardButton(
text="Противоположно", callback_data="switch_opposite"
), ),
InlineKeyboardButton(text="Хеджирование", callback_data="Both_Sides"),
], ],
[ [
InlineKeyboardButton(text="Назад", callback_data="additional_settings"), InlineKeyboardButton(text="Назад", callback_data="additional_settings"),
@@ -207,21 +169,6 @@ back_to_additional_settings = InlineKeyboardMarkup(
] ]
) )
change_limit_price = InlineKeyboardMarkup(
inline_keyboard=[
[
InlineKeyboardButton(
text="Установить цену", callback_data="set_limit_price"
),
InlineKeyboardButton(text="Последняя цена", callback_data="last_price"),
],
[
InlineKeyboardButton(text="Назад", callback_data="additional_settings"),
InlineKeyboardButton(text="На главную", callback_data="profile_bybit"),
],
]
)
back_to_change_limit_price = InlineKeyboardMarkup( back_to_change_limit_price = InlineKeyboardMarkup(
inline_keyboard=[ inline_keyboard=[
[ [
@@ -239,17 +186,12 @@ risk_management = InlineKeyboardMarkup(
inline_keyboard=[ inline_keyboard=[
[ [
InlineKeyboardButton( InlineKeyboardButton(
text="Изм. цены прибыли", callback_data="take_profit_percent" text="Тейк-профит", callback_data="take_profit_percent"
), ),
InlineKeyboardButton( InlineKeyboardButton(
text="Изм. цены убытка", callback_data="stop_loss_percent" text="Стоп-лосс", callback_data="stop_loss_percent"
), ),
], ],
[
InlineKeyboardButton(
text="Максимальный риск", callback_data="max_risk_percent"
)
],
[InlineKeyboardButton(text="Комиссия биржи", callback_data="commission_fee")], [InlineKeyboardButton(text="Комиссия биржи", callback_data="commission_fee")],
[ [
InlineKeyboardButton(text="Назад", callback_data="main_settings"), InlineKeyboardButton(text="Назад", callback_data="main_settings"),
@@ -391,48 +333,6 @@ def make_close_orders_keyboard(symbol_order: str, order_id: str):
# START TRADING # START TRADING
merged_start_trading = InlineKeyboardMarkup(
inline_keyboard=[
[
InlineKeyboardButton(text="Лонг", callback_data="long"),
InlineKeyboardButton(text="Шорт", callback_data="short"),
],
[InlineKeyboardButton(text="Свитч", callback_data="switch")],
[InlineKeyboardButton(text="Назад", callback_data="profile_bybit")],
]
)
both_start_trading = InlineKeyboardMarkup(
inline_keyboard=[
[
InlineKeyboardButton(text="Лонг", callback_data="long"),
InlineKeyboardButton(text="Шорт", callback_data="short"),
],
[InlineKeyboardButton(text="Назад", callback_data="profile_bybit")],
]
)
switch_side = InlineKeyboardMarkup(
inline_keyboard=[
[
InlineKeyboardButton(text="Лонг", callback_data="switch_long"),
InlineKeyboardButton(text="Шорт", callback_data="switch_short"),
],
[
InlineKeyboardButton(
text="По направлению", callback_data="switch_direction"
),
InlineKeyboardButton(
text="Противоположно", callback_data="switch_opposite"
),
],
[
InlineKeyboardButton(text="Назад", callback_data="start_trading"),
InlineKeyboardButton(text="На главную", callback_data="profile_bybit"),
],
]
)
back_to_start_trading = InlineKeyboardMarkup( back_to_start_trading = InlineKeyboardMarkup(
inline_keyboard=[ inline_keyboard=[
[ [