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

Не работает ни маркет ни лимит order #3

Closed
brandeurs opened this issue Jun 9, 2023 · 9 comments
Closed

Не работает ни маркет ни лимит order #3

brandeurs opened this issue Jun 9, 2023 · 9 comments
Assignees
Labels
invalid This doesn't seem right question Further information is requested

Comments

@brandeurs
Copy link

client.create_order(
account_id: 'ВАШ_ID_СЧЁТА',
figi: 'BBG000BL9C59',
quantity: 1,
price: 11.35,
direction: InvestTinkoff::V2::OrderDirection::BUY,
order_type: InvestTinkoff::V2::OrderType::LIMIT,
order_id: 'ВАШ_ВНУТРЕННИЙ_ID_ЗАЯВКИ'
)

order_id - генерю по дате и секундам уникальный
ошибка 400 и все. Остальное работает.

@blackchestnut blackchestnut self-assigned this Jun 20, 2023
@blackchestnut
Copy link
Owner

blackchestnut commented Jun 20, 2023

@brandeurs хм, странно... на текущей версии библиотеки проверил

client.create_order(account_id: '***', figi: 'FUTSI0923000', quantity: 1, price: 86000, direction: InvestTinkoff::V2::OrderDirection::BUY, order_type: InvestTinkoff::V2::OrderType::LIMIT, order_id: 'test_1_20_06_2023')

Результат

=> #<struct InvestTinkoff::V2::Response
 payload=
  {"orderId"=>"1892948522941182087",
   "executionReportStatus"=>"EXECUTION_REPORT_STATUS_NEW",
   "lotsRequested"=>"1",
   "lotsExecuted"=>"0",
   "initialOrderPrice"=>{"currency"=>"rub", "units"=>"86000", "nano"=>0},
   "executedOrderPrice"=>{"currency"=>"rub", "units"=>"0", "nano"=>0},
   "totalOrderAmount"=>{"currency"=>"rub", "units"=>"0", "nano"=>0},
   "initialCommission"=>{"currency"=>"rub", "units"=>"34", "nano"=>400000000},
   "executedCommission"=>{"currency"=>"rub", "units"=>"0", "nano"=>0},
   "aciValue"=>{"currency"=>"", "units"=>"0", "nano"=>0},
   "figi"=>"FUTSI0923000",
   "direction"=>"ORDER_DIRECTION_BUY",
   "initialSecurityPrice"=>{"currency"=>"rub", "units"=>"86000", "nano"=>0},
   "orderType"=>"ORDER_TYPE_LIMIT",
   "message"=>"",
   "initialOrderPricePt"=>{"units"=>"86000", "nano"=>0},
   "instrumentUid"=>"1f9e6a2e-aff1-4e9c-8b22-17de45443e2b"},
 http_code=200>

P.S. Сделал ордер так, чтобы он сразу исполнился, т.к. цена, по которой хочу купить, выше чем текущая... результат:

Monosnap 2023-06-20 21-28-41

@blackchestnut
Copy link
Owner

@brandeurs попробую влить и протестировать изменения #4 от @SRadyukov возможно это влияет на ваш случай, но предполагаю, что не в этом причина

@blackchestnut
Copy link
Owner

@brandeurs да, как и предполагалось, эти изменения не повлияли на результат в моих тестах... Для больше информации вам нужно прислать сообщение об ошибке, которое возвращает Тинькофф. Например:

=> #<struct InvestTinkoff::V2::Response payload={"code"=>3, "message"=>"not enough assets for a margin trade", "description"=>"30042"}, http_code=400>

@blackchestnut blackchestnut added question Further information is requested invalid This doesn't seem right labels Jun 20, 2023
@blackchestnut
Copy link
Owner

blackchestnut commented Jun 20, 2023

@brandeurs Эх, вы видимо просто в лоб скопировали пример... обращайте внимание на ошибки и требования к бумаге... ошибка у вас скорее всего - "only for qualified investors". Цена то же могла поменяться, тогда ошибка была бы другой

@brandeurs
Copy link
Author

brandeurs commented Jun 21, 2023 via email

@brandeurs
Copy link
Author

brandeurs commented Jun 21, 2023 via email

@brandeurs
Copy link
Author

brandeurs commented Jun 21, 2023 via email

@blackchestnut
Copy link
Owner

@brandeurs Сложно понять в чем у вас дело, попробуйте новый токен создать в тинькофф, может у вас он "протух". На сколько я помню, если не пользоваться несколько месяцев токеном, то он становится не активным.

@blackchestnut
Copy link
Owner

В старой версии ответ гема :: client.accounts #<struct InvestTinkoff::V2::Response payload= {"accounts"=> [{"id"=>”****", "type"=>"ACCOUNT_TYPE_TINKOFF", "name"=>"Брокерский счёт", "status"=>"ACCOUNT_STATUS_OPEN", "openedDate"=>"2019-11-28T00:00:00Z", "closedDate"=>"1970-01-01T00:00:00Z", "accessLevel"=>"ACCOUNT_ACCESS_LEVEL_FULL_ACCESS"}]}, Новая версия гема --- gem install invest_tinkoff Fetching invest_tinkoff-0.9.6.7.gem Successfully installed invest_tinkoff-0.9.6.7 1 gem installed client.accounts ArgumentError: wrong number of arguments (given 2, expected 1) from /Users/adm/.rvm/gems/ruby-3.1.2/gems/json-1.8.6/lib/json/common.rb:155:in `initialize'

Изменения в последней версии метод accounts совсем не затрагивали
v0.9.6.6...v0.9.6.7

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
invalid This doesn't seem right question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants