Which cloud provider do you recommend?

Discussion in 'Automated Trading' started by grzegorz3, Jul 15, 2022.

  1. grzegorz3

    grzegorz3

    I read mainly about these but it is a new idea to me to use a cloud, so maybe there is something better to use. I need it for Interactive Brokers API with Python. The purpose is to trade futures using one minute candles, with about 10 trades a day.
    • Amazon Web Services (AWS)
    • Microsoft Azure
    • Google Cloud Platform
    • Server Space
    • IBM Cloud Services
    • Oracle
     
  2. ZBZB

    ZBZB

  3. www.ninjamobiletrader.com provides cloud servers in Chicago. You get dedicated 1gb/s, and dedicated CPU (no pooling or sharing with others).

    We also don't charge extra for CPU compute like AWS, Azure, etc. You can run at 100% CPU with no surprises bills at the end of the month, making our services very cost effective compared to providers like AWS.

    Here's a quick speed test example on our Chicago servers:

    upload_2022-7-15_9-36-53.png
     
    nrstrader likes this.
  4. grzegorz3

    grzegorz3

    @ZBZB Oh, I didn't know about that. That actually helps.
    Thank you so much.
     
  5. skinny

    skinny

    I have used the following products: AWS, Microsoft Azure, Digital Ocean, and Google Cloud Platform. I also have a certification in AWS architecture from Udacity. Here are my thoughts on all of these services:

    AWS - AWS is the market share leader according to https://www.statista.com/chart/1881...ading-cloud-infrastructure-service-providers/.
    For good reason, in my opinion. It can be as cheap or expensive as you need it to be. It has all the tools you need for managing identity, cost, storage, and networking. It is it the most straight-forward and easy to use? Not exactly, but it is my first recommendation due to all of the other benefits.

    Microsoft Azure - Also good, and preferred by organizations that need integration with Active Directory Doman Services. If you only need a linux vps then there are better options.

    Google Cloud Platform (GCP) - I've only used this sparingly. It's probably good. Give it a try, they will give you free credits to use.

    Digital Ocean - I've used this to run a linux server for my rsync backups. It is a very straight-forward, cost effective way to use a linux vps. Simpler and more straightforward than AWS.

    Also one question I would ask yourself is: "Do I really want access to the underlying infrastructure that services like AWS provide?" If you only need access to an IB api, there are companies that can provide this for you so that you don't have to worry about things such as managing cpu, memory, networking, etc. I believe this is known as "software development as a service". I believe QuantConnect and QuantRocket fall in this category.

    I myself do enjoy working in a linux terminal and configuring everything myself. You may be one of these people, and that's ok too.

    So to summarize:
    If you are the type who wants to do more learning and configuring: AWS (possibly Azure if you think you are going to be doing other sysadmin work for a large company)
    If you are an individual who just needs access to a vps with linux: Digital Ocean (there are competitors but I don't know much about them. You should google them).
    You are the type of person who only wants to write code: Look into an sdaas solution.
     
    grzegorz3, Ninja and stochastix like this.
  6. In order to try things out at no cost to you, you might consider the 1 year free trial provided by AWS (Amazon Web Services). To be fair this is a very small VM, but it will probably be capable of running a single account/platform. I also use Azure and have found their VMs to be extremely reliable. They are a little on the pricey side though. Hope this helps.
     
    grzegorz3 likes this.
  7. There is also data science type offerings like Paperspace and Saturn Cloud that are sitting on top of Azure/AWS/Google.

    AWS/Azure though is probably total overkill for this. Logging into AWS for the first time is a real "holy shit" moment. You would have to at least study for the AWS Certified Cloud Practitioner cert because you are basically the systems admin, billing department and cyber security from the moment you log in. Right away you have everything you need to build a global company with a 100,000 employees. It will be a huge time sink if you are not building a team. I closed my AWS account after getting the Certified Cloud Practitioner cert because it is just total overkill for anything I am ever going to do besides compute. I would rather pay Saturn or Paperspace a little bit than deal with AWS and the stress of massive resources that I am never going to use.

    Compute wise though the price of graphics cards have come down enough and a 16 core CPU isn't bad at all. I am looking at building an I9/ RTX 3060 machine that will end up being in the $1500 range with 16 cpu cores and 3500 cuda cores.
     
    Last edited: Oct 16, 2022
  8. Databento

    Databento Sponsor

    If you have no experience with any of them, you'll probably find it easiest to set up AWS because it's the most widely used and there's plenty of public-contributed tutorials and docs that you can find covering every topic you'll face.

    Moreover, knowing AWS is the most transferrable skill since there's a good chance you'll deal with S3, and the S3 API is ubiquitous even outside of AWS.

    Usually the other cloud providers come into question when you have more specific needs as your use case matures. For example:
    - Google Cloud is in the CME's Aurora data center, so if you are targeting a gateway that's situated there, it does give you a latency edge.
    - Some services are particularly expensive: Google Maps API, AWS Cloudfront CDN etc.
    - If you have an autoscaling application, mixing-and-matching spot instances from multiple providers can save cost.