For a deeper look into our Eikon Data API, look into:

Overview |  Quickstart |  Documentation |  Downloads |  Tutorials |  Articles

question

Upvotes
Accepted
49 3 5 6

An asyncio.Future, a coroutine or an awaitable is required in Spyder (Eikon data API)

When I run the following script:

import eikon as ek


ek.set_app_key('')


df, err = ek.get_data(

instruments = ['GAZP.MM'],

fields = ['TR.CLOSEPRICE(Frq=D,SDate=2021-12-01,EDate=2021-12-19,Curn=USD).date','TR.CLOSEPRICE(Frq=D,SDate=2021-12-01,EDate=2021-12-19,Curn=USD)' ]

)


display(df)


I get the following error:


TypeError: An asyncio.Future, a coroutine or an awaitable is required


I launch the script in Spyder, Anaconda.

eikon-data-apipythonspyder
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Upvotes
Accepted
5.1k 8 5 8

hi @susskaya.anita

According to this thread, Could you try Spyder version 5.2.1

icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

I tried it on the computer of my collegaue and it worked perfectly. However, on my computer there is no such type of Spyder in Anaconda. The latest version there is 5.1.5. How could I install it? I tried to do it via command line Anaconda Prompt. Spyder 5.2.1 was installed but it did not work properly.

hi @susskaya.anita

which command did you use to install spyder?

I found that spyder 5.2.1 does exist in conda-forge package (regarding this site), could you try the command below in Anaconda prompt?

conda install -c conda-forge spyder
Yes, I have already done that. On one computer it worked. On my computer, as I wrote above, it was installed but it did not work. It was written that there was an error with kernel.
Show more comments
Upvotes
47.4k 111 44 60

@susskaya.anita

I got the following exception when I ran the code on Spyder.

[SpyderKernelApp] ERROR | Exception in message handler:
Traceback (most recent call last):
  File "C:\Users\U8009686\Anaconda3\lib\site-packages\spyder_kernels\comms\frontendcomm.py", line 165, in poll_one
    asyncio.run(handler(out_stream, ident, msg))
  File "C:\Users\U8009686\Anaconda3\lib\site-packages\nest_asyncio.py", line 36, in run
    task = asyncio.ensure_future(main)
  File "C:\Users\U8009686\Anaconda3\lib\asyncio\tasks.py", line 680, in ensure_future
    raise TypeError('An asyncio.Future, a coroutine or an awaitable is '
TypeError: An asyncio.Future, a coroutine or an awaitable is required
[SpyderKernelApp] ERROR | Exception in message handler:
Traceback (most recent call last):
  File "C:\Users\U8009686\Anaconda3\lib\site-packages\spyder_kernels\comms\frontendcomm.py", line 165, in poll_one
    asyncio.run(handler(out_stream, ident, msg))
  File "C:\Users\U8009686\Anaconda3\lib\site-packages\nest_asyncio.py", line 36, in run
    task = asyncio.ensure_future(main)
  File "C:\Users\U8009686\Anaconda3\lib\asyncio\tasks.py", line 680, in ensure_future
    raise TypeError('An asyncio.Future, a coroutine or an awaitable is '
TypeError: An asyncio.Future, a coroutine or an awaitable is required

However, Eikon Data API returned the data properly, as shown below.

1641371451805.png

The exception happens in the spyder kernel and nest asyncio modules so it could be a problem in Spyder.

Moreover, the code runs fine on Jupyter Notebook.


1641371451805.png (66.3 KiB)
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Could you help me define which modules and version of Spyder are suitable for Eikon package usage?