xlwings:
Connecting Python with Excel
Python for Quant Finance Meetup, London
10 June 2014 Felix Zumstein
8 Years in Banking Startup (Feb 2014)
About Me
2
Other Solutions to the same Problem
•  Proprietary solutions
– PyXLL
– DataNitro
•  Microsoft’s solution
– Pyvot (open-source but hosted on codeplex...)
•  Others:
– ExPy
– Pyinex
– ExcelPython
– XLLoop
3
xlwings: The upside
•  Easy syntax: Close to VBA yet Pythonic.
•  Easy deployment: No add-in required. Not even an
existing Python installation.
•  Easy debugging: Directly from within Python.
•  Focus on datastructures that matter: NumPy arrays
and Pandas DataFrames.
•  Technically simple: Works with pretty much every
combination of Python, Excel and Windows.
•  Works with your favorite environment: Cmd, IPython,
Spyder, PyCharm etc.
•  It’s BSD licensed, on GitHub and part of Anaconda 2.0
4
xlwings: The downside
•  Overhead: Each call relies on the COM interface
through pywin32 and the Command Prompt
•  No UDFs
•  It’s still v0.1.0: So expect a few bugs and API changes
(but also tons of new features...)
5
Demo
http://xlwings.org
6

xlwings - Connecting Python with Excel

  • 1.
    xlwings: Connecting Python withExcel Python for Quant Finance Meetup, London 10 June 2014 Felix Zumstein
  • 2.
    8 Years inBanking Startup (Feb 2014) About Me 2
  • 3.
    Other Solutions tothe same Problem •  Proprietary solutions – PyXLL – DataNitro •  Microsoft’s solution – Pyvot (open-source but hosted on codeplex...) •  Others: – ExPy – Pyinex – ExcelPython – XLLoop 3
  • 4.
    xlwings: The upside • Easy syntax: Close to VBA yet Pythonic. •  Easy deployment: No add-in required. Not even an existing Python installation. •  Easy debugging: Directly from within Python. •  Focus on datastructures that matter: NumPy arrays and Pandas DataFrames. •  Technically simple: Works with pretty much every combination of Python, Excel and Windows. •  Works with your favorite environment: Cmd, IPython, Spyder, PyCharm etc. •  It’s BSD licensed, on GitHub and part of Anaconda 2.0 4
  • 5.
    xlwings: The downside • Overhead: Each call relies on the COM interface through pywin32 and the Command Prompt •  No UDFs •  It’s still v0.1.0: So expect a few bugs and API changes (but also tons of new features...) 5
  • 6.