Skip to content
This repository has been archived by the owner on Nov 2, 2023. It is now read-only.
/ six-percent Public archive

A bot that helps to automatically purchase ASNB Fixed Price UT units

License

Notifications You must be signed in to change notification settings

ngshiheng/six-percent

Repository files navigation

Six Percent


build lint release

Please read the disclaimer before using.

This bot helps users to buy ASNB Fixed Price UT units.

The user shall proceed to make his/her own payment only if there is a successful purchase attempt.

Currently, this bot supports up to 3 fixed price unit trusts:

  • ASM (Malaysia)
  • ASM2 (Wawasan)
  • ASM3 (1Malaysia)

Table of Contents

How It Works

sequenceDiagram
    participant Bot
    participant Login
    participant Portfolio
    participant Transactions
    participant Payment
    participant Logout
    link Bot: SixPercent @ https://github.com/ngshiheng/six-percent
    link Login: https://www.myasnb.com.my/login
    link Portfolio: https://www.myasnb.com.my/portfoio
    link Transactions: https://www.myasnb.com.my/transactions
    link Logout: https://www.myasnb.com.my/logout

    Bot->>Login: launch browser
    Login->>Portfolio: success
    Portfolio->>Transactions: select ASM
    loop 10 attempts
        Transactions->>Transactions: purchase
    end
    Transactions->>Payment: success
    Payment->>Logout: success
    Transactions-->>Portfolio: failed
    loop ASM, ASM2, ASM3
        Portfolio->>Portfolio: select fund
    end
    Portfolio->>Logout: no successful purchase attempt

Development

Requirements

Installation (Windows 10/11)

We use poetry to manage our dependencies.

Start by installing all the dependencies

poetry install --no-root
pre-commit install

Run with Python

poetry run python main.py

Compiling to exe

Optional: to generate a new SixPercent.spec file, run the following:

pyi-makespec main.py --name SixPercent --icon "img\favicon.ico" --onefile --console --add-binary "bin\driver\chromedriver.exe;bin\driver\"
  1. To (re)generate the executable, run pyinstaller SixPercent.spec --clean

  2. A SixPercent.exe will be generated inside the dist/ folder

  3. Run SixPercent.exe and use the bot

Usage

Read USAGE.md.

Contributing

Read CONTRIBUTING.md.

Disclaimer

Read DISCLAIMER.md.

FAQ

For more details, visit myASNB Official Website

What is myASNB Fixed Price Fund?

  • ASNB is a subsidiary of “Permodalan Nasional Berhad” (PNB). It is a government-supported unit trust management company.
  • Amanah Saham are funds that are managed by Amanah Saham National Berhad (ASNB).

How does the fund work? Why should I care?

  • If there is no unit available, you will never be able to purchase new units or open up a new account.
  • A fixed price (RM 1/unit) means there will be no price fluctuation. These funds can thus be regarded as saving accounts.
  • The dividend earned is not taxable.

Is there any sales charge or additional fees?

  • No sales charge.
  • No additional fees.

How to start buying or investing?

  • You need an ASNB account in order to start investing.
  • You can perform all the transactions (including opening an account) at any ASNB branch or agent.