admin

Guide to publish your app on App Store

How it work


This article addresses some frequently asked questions (FAQ) related to ALGOGENE App Store, and provides step-by-step guidance for developers how to publish your application.

app store

What is ALGOGENE App Store?

We believe in a collaborative community of open data and application that could create larger social benefits. ALGOGENE App Store showcases a variety of applications created by our community developers. Supported by ALGOGENE’s secure infrastructure and connectivity, it enables data scientists and business intelligence to get access for research and development in different areas.


What are the benefits to publish/subscribe an App?

As an App provider, you can benefit from:

  • feasible to define your revenue model
  • scale to global audience as a distribution channel
  • speed up commericalization from well established infrastructure

On the other hand, for App consumers, it helps you to

  • accelerate your research journey
  • broaden your development and trial scope
  • fast integration to your system
  • cost saving to launch/prototype your project

Who are eligible to publish App?

We emphasize community collaboration. Therefore, both individuals and institutions are welcome to publish your applications.


How the Apps are managed on ALGOGENE App Store?

ALGOGENE provides common and transparent data centric environments for data, algorithms and knowledge sharing between industries, developers, researchers while protecting IP ownership and privacy.


How many App can I publish or subscribe?

There is no limitation. You can publish/subscribe as many App as you want.


How much revenue can I get for publishing my App?

You have the feasibility to determine the price of your App. It will be quoted in a certain Hong Kong Dollar for each 100 API calls on your App.

i.e. HK$ P / 100 requests

When you list your application, the price P will be determined by you.


When and how will I get the revenue when someone subscribe my App?

Stripe is our payment agent to send the money to you. To receive your entitled revenue, you will need to firstly register your bank account information under [Settings] > [My Wallet] > [Wallet Connection] > "Create Stripe".

wallet_connect

When someone subscribe your App, the revenue will firstly deposited to your ALGOGENE Wallet. You can check the balance under [Settings] > [My Wallet] > [Wallet Balance].

  • Withdrawal can be done as long as the wallet balance is at least HK$800.
  • There will be 15% of your App revenue splited to ALGOGENE for system infrastructure setup and maintenance.
wallet



How to publish a new App?

Suppose we have already developed a python package "model1" in a local machine.

model1

It contains 2 files:

  • "__init__.py" is an empty file such that "model1" can be used as a python module
  • "func1.py" contains our defined functions "my_add" and "my_multiply". Just for demo purpose, the functions simply compute the sum and multiple of 2 numbers
model2

Now, we can publish the App as follows:

  • Login ALGOGENE platform
  • Go to [My History] > [Custom File Viewer]
  • Upload the local folder "model1" under /lib
  • model3

  • Hightlight "model1" and click the "Publish" icon
  • model4

  • Specify your desired "Reward", the App's name and description, then "Submit"
  • model5

  • ALGOGENE team will take a couple of days to evaluate the quality of your App. Once the App is approved. It will be available on ALGOGENE App Store. Alternatively, you can check all your published Apps under [Settings] > [Algo Marketplace] > [Algo Creator] > [My Published Algo Strategy]
  • model6

  • Now, click "Show algo details" in the dropdown
  • model8

  • You can click the "pencil" icon to update the App description.
  • model9

  • At the botton right, click the "pencil" icon to update the technical doc for calling your App.
  • model10

  • For our example,
    • Endpoint: 'func1.my_add' refers to calling the function 'my_add' in 'func1' module
    • Body: 'a' and 'b' refers to the input parameters defined in our function 'func1'
    • Response: specify the structure of our function's output (just a number in our case)
    • Example: it's better to include some input and output examples

  • model11

  • After updated your App Doc, it now looks clear how to call/use your App
  • model12

How to de-list my App?

You also reserve the right to de-list any of your published Apps.

  • Go to [Settings] > [Algo Marketplace] > [Algo Creator] > [My Published Algo Strategy]
  • Click "Delist algo on Marketplace" in dropdown
model7



How to subscribe a new App?

ALGOGENE adopts a "Pay-as-you-go" model which requires you to top-up your wallet balance first. Every time when you call the App API, it will charge automatically from your wallet.

  • Explore available App from ALGOGENE App Store
  • If your wallet has sufficient balance, you can follow the App Doc to make an API call to use it on the way.
  • Otherwise, go to an App page, click "Subscribe" button to top-up your wallet
  • model13



 
Bumblebee
Thanks for introducing such a great feature on the platform! 
I am interested to use some of the Apps in my backtest/ live script. Just wanna to know how can I do it. 
 ðŸ™ðŸ™ðŸ™

 
admin
Original Posted by - Bumblebee: Thanks for introducing such a great feature on the platform! 
I am interested to use some of the Apps in my backtest/ live script. Just wanna to know how can I do it. 
 ðŸ™ðŸ™ðŸ™

This feature is under our development roadmap, and will be launched in 2023 Q1. 
 
Bumblebee
Original Posted by - admin:
This feature is under our development roadmap, and will be launched in 2023 Q1. 
If the app can be import to the backtest/ livetrade environment, that would be perfect ^__^
Looking forward to this feature soon! 
 
admin
Original Posted by - admin:
This feature is under our development roadmap, and will be launched in 2023 Q1. 

Hi all, thanks for waiting so long! This feature has been launched.

Please refer to this article "Guideline to call App function in strategy script" to learn how to implement.