Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Price 0 в CreateOrderRequestModel #41

Closed
Qolorerr opened this issue Jun 11, 2024 · 7 comments
Closed

Price 0 в CreateOrderRequestModel #41

Qolorerr opened this issue Jun 11, 2024 · 7 comments

Comments

@Qolorerr
Copy link

Qolorerr commented Jun 11, 2024

Пытаюсь создать заявку с price 0, однако утыкаюсь в различие библиотеки и версии API, как понимаю.
Когда ставлю price=0 (по новой версии API), получаю ошибку на стороне Финама:

  File "C:\Users\Qolorer\AppData\Roaming\Python\Python312\site-packages\finam_trade_api\order\order.py", line 44, in create_order
    raise FinamTradeApiError(f"{err.error.code} | {err.error.data} | {err.error.message}")
finam_trade_api.exceptions.FinamTradeApiError: VALIDATION | {'Price': ["'price' must not be equal to '0'."]} | One or more values were invalid. See data for details.

Когда ставлю price=None (по старой версии API), получаю exception от самой библиотеки:

  File "C:\Users\Qolorer\Python\finam\order.py", line 35, in create_order
    payload = CreateOrderRequestModel(
  File "C:\Users\Qolorer\AppData\Roaming\Python\Python312\site-packages\pydantic\main.py", line 341, in __init__
    raise validation_error
pydantic.error_wrappers.ValidationError: 1 validation error for CreateOrderRequestModel
price
  none is not an allowed value (type=type_error.none.not_allowed)

Как поставить 0 цену?

@DBoyara
Copy link
Owner

DBoyara commented Jun 12, 2024

Price = None на сколько я помню никогда и не было, а только планируется в дальнейшем. Согласно документации вот здесь написано: Для выставления рыночной заявки достаточно указать в поле price значение 0., в swagger аналогично создание заявки по-умолчанию через 0. Так что библиотека корректно ругается на null. Можешь попробовать чистый запрос, например, через swagger или через requests с null и с 0. Если заработает с null, то отпишись в finam (и мне желательно), что они изменения выкатили, а доку не поправили.

@Qolorerr
Copy link
Author

Попробовал через запрос поставить price 0 и null. Не принимает :/

image

@Qolorerr
Copy link
Author

Чтож, видимо нужно искать альтернативы. Спасибо за ответы)

@DBoyara
Copy link
Owner

DBoyara commented Jun 15, 2024

если не принимает ни null, ни 0, то надо написать сюда https://github.com/FinamWeb/trade-api-docs разработчкам) я просто сейчас не торгую и не могу проверить вот так сходу, но точно у меня на этой версии либы пол года назад все работало с рыночной заявкой

@kalDima1218
Copy link

Правильно понимаю, что в данный момент эта функция просто не работает?

@DBoyara DBoyara reopened this Jan 29, 2025
@DBoyara
Copy link
Owner

DBoyara commented Jan 29, 2025

Скоро будет работать #50

@DBoyara
Copy link
Owner

DBoyara commented Jan 29, 2025

Готово, залил на pypi https://pypi.org/project/finam-trade-api/3.1.0/.
Проверил - нужно слать None для рыночной цены, 0 не работает.
Дока финама не актуальная

@DBoyara DBoyara closed this as completed Jan 29, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants