Open coveritytest opened 2 years ago
This can be reproduced regularly on my account, does nobody else have this problem?
I also have the same issue. Any solution?
Could it be that you need to "sleep" in between two calls to the api enough time?
I have it also this morning
I wait between buy orders for 5 seconds, but it might be necessary to wait between every API call, will try this. The {"errors":[{"text":"order.error.128"}]}
error happens not so often and cannot be reproduced on my site.
@coveritytest I'm glad you brought this up, since I have the same experience. It's certainly not related to a timeout issue between consecutive API calls, see my remark in this post.
Work-around
When we omit step 3, step 5 will fail with errors.
Observations
connect()
method. @Chavithra Do you have any idea what this difference might be?I agree that the login process for the web portal is different from DeGiro's API connect() method. I have noticed that if you log in via the browser or your phone, no errors pop up until midnight of the next day . So right now I am logging in into Degiro every morning as workaround, so that I am sure my daily orders will go through. But it isn't very pleasant experience, and goes against principle of having automated API where everything supposed to be automated without user intervention.
I can also support and try to find the bug if @Chavithra you can point me out where do you think this is coming from
I have the same issue as well..
Same issue here. Following for a solution!
Any news about this?
Nice analysis.
Will try to reproduce it this month.
Questions :
Nice analysis.
Will try to reproduce it this month.
Questions :
- Which action fail exactly (create, update, delete order) ?
- What is the duration of these orders ?
- Did you try to force connect() everyday ?
check_order()
throws TimeoutError
exception. Our script handles this by a connect()
and upon success retries the check_order()
. This will return None
.order = Order(
action = Order.Action.BUY,
order_type = Order.OrderType.LIMIT,
price = price,
product_id = product_id,
size = amount,
time_type = Order.TimeType.GOOD_TILL_DAY
)
I hope this helps for your analysis.
I agree with @funnel20.
If I do not perform a login via browser besides degiro connector once a day, sell and buy orders fail. It's difficult to say those are the only actions failing because I only need to delete an order if it exists. And yes, I've tried to force reconnection. Indeed, I even implemented a connection step before creating a buy/sell order. Even with this "workaround", it still fails.
I was thinking about the issue and, a dirty solution to temporarily mitigate the problem would be the implementation of a browser login with chrome driver working in parallel to connect() function. It's far from ideal, but It can work (desperate times call for desperate measures)
Good day for you guys :)
Did someone manage to solve this without having to manually log in ?
Never had the issue actually, using 2fa auth and running the script from a Google cloud function
Hey, I have the same issue. Any solution/fix?
Same issue here
I do have some strange errors when ordering:
Unfortunately there is no more debug output despite I set
level=logging.DEBUG
I just found out that at least the
{"errors":[{"text":"Internal server error"}]}
error is gone, when I login to degiro once via browser. I guess this is a bug. The session is created correctly:
2022-03-14 12:08:17,645 INFO MainThread get_session_id:response_dict: {'isPassCodeEnabled': True, 'locale': 'de_DE', 'redirectUrl': 'https://trader.degiro.nl/trader/', 'sessionId': 'xxxxxxxxx.prod_a_116_4', 'status': 0, 'statusText': 'success'}
Might always happen after a weekend, when I did not login for a long time, but not sure. No, happened this morning again. Always have to login first, until buy order is executed.