This is an implementation example of a bot that periodically sends predictions to the alphasea-agent.

Overview

alphasea-example-model

alphasea-example-modelは、 alphasea-agent に対して毎ラウンド、予測を投稿するプログラムです。

Numeraiのexample modelに相当します。

準備

alphasea-example-modelの動作には、 alphasea-agent が必要です。リンク先の手順に従ってセットアップしてください。

インストール

alphasea-example-modelリポジトリをクローンします。

git clone https://github.com/alphasea-dapp/alphasea-example-model.git

以降の作業はクローンしたディレクトリ内で行います。

動かし方

.envファイル作成

以下のような内容の.envファイルをalphasea-example-modelディレクトリ直下に作ります。

.env

ALPHASEA_AGENT_BASE_URL=http://[alphasea-agentのIPアドレス]:8070
ALPHASEA_MODEL_ID=my_model_id
ALPHASEA_MODEL_PATH=data/example_model_rank.xz

ALPHASEA_AGENT_BASE_URLにはalphasea-agentのURLを指定します。

ALPHASEA_MODEL_IDには好きなモデルIDを設定します。 NumeraiのモデルIDに相当します。

モデルIDの制約

  • AlphaSea全体でユニーク
  • 4文字以上31文字以内
  • 小文字のアルファベットと数字とアンダースコア(_)を使用可能
  • 先頭は小文字のアルファベットかアンダースコア(_)のみ

ALPHASEA_MODEL_PATHには学習したモデルファイルのパスをリポジトリルートからの相対パスで指定します。 data/example_model_rank.xzは学習済みモデルです。 学習の仕方はnotebooks内を見てください。

起動

以下のコマンドを実行し、example-modelを起動します。

docker-compose up -d

以下のコマンドで、example-modelのログを確認できます。

docker-compose logs -f

以上で、セットアップは完了です。

モデル改良

モデルを改良する方法を説明します。 以下のコマンドを実行し、jupyterを起動します。

docker-compose -f docker-compose-jupyter.yml up -d

以下のURLにアクセスしjupyterをブラウザで開きます。 モデル学習notebookをいくつか用意したので、それらを参考にして、改良してください。

http://localhost:8888/lab/workspaces/auto-f/tree/notebooks

environment variables

name description
ALPHASEA_AGENT_BASE_URL alphasea-agentのbase URL
ALPHASEA_MODEL_ID モデルID
ALPHASEA_MODEL_PATH モデルファイルパス
ALPHASEA_SYMBOLS 学習に使うシンボル。本番ではモデルファイルに記録した学習時のシンボルを使うのでこの設定は使いません。
ALPHASEA_POSITION_NOISE 提出するポジションにノイズを加える(デバッグ用)

Development

test

alphasea-agentに依存。

docker-compose run --rm model bash scripts/test.sh

predict

docker-compose run --rm model python src/predict.py
Owner
AlphaSea
AlphaSea is a decentralized marketplace for market alphas.
AlphaSea
A python script to download twitter space, only works on running spaces (for now).

A python script to download twitter space, only works on running spaces (for now).

279 Jan 02, 2023
Asynchronous Python Wrapper for the Ufile API

Ufile.io Asynchronous Python Wrapper for the Ufile API (Unofficial).

Gautam Kumar 16 Aug 31, 2022
Spotify Top Lists - get the current top lists of a user from the Spotify API and display them in a Flask app

Spotify Top Lists This is a simple script that will get the current top lists of a user from the Spotify API and display them in a Flask app. Requirem

Yasin 0 Oct 16, 2022
Collection of script to manage WLED devices

Collection of script to manage WLED devices

Daniel Poelzleithner 4 Sep 26, 2022
google-resumable-media Apache-2google-resumable-media (🥉28 · ⭐ 27) - Utilities for Google Media Downloads and Resumable.. Apache-2

google-resumable-media Utilities for Google Media Downloads and Resumable Uploads See the docs for examples and usage. Experimental asyncio Support Wh

Google APIs 36 Nov 22, 2022
This is a Innexia Group Manager Bot with many features

⚡ Innexia ⚡ A Powerful, Smart And Simple Group Manager ... Written with AioGram , Pyrogram and Telethon... Available on Telegram as @Innexia ❤️ Suppor

TeamDeeCode 84 Jun 04, 2022
CoWIN Vaccination slot booking telegram bot with auto captcha resolver & alerting feature.Now, never miss a slot.

COWIN VACCINATION SLOT AUTO BOOKING (Bot with captcha solving & alerting capabilities. Never miss the vaccine slot.) June-10-2021/ 0030 hrs: 23 succes

Shashank Bafna 17 Nov 12, 2022
A simple fun discord bot using discord.py that can post memes

A simple fun discord bot using discord.py * * Commands $commands - to see all commands $meme - for a random meme from the internet $cry - to make the

Dice Flip 2 Dec 20, 2021
Powerful Telegram userbot to turn your PROFILE PICTURE & LAST NAME into a real time clock & to change your BIO automatically.

DATE_TIME_USERBOT-TeLeTiPs Powerful Telegram userbot to turn your PROFILE PICTURE & LAST NAME into a real time clock & to change your BIO automaticall

53 Jan 05, 2023
Find people to play tennis with.

40Love 40Love is a full-stack web application that helps tennis players find hits at public tennis courts. Players can select public courts on the map

Tanner Schmutte 27 Jun 08, 2022
Instadev - Crack Instagram IqbalDev

Crack Instagram IqbalDev ⇨ Install Script Di Termux $ pkg update && upgrade $

Dicky Wahyudi 1 Feb 27, 2022
Dns-Client-Server - Dns Client Server For Python

Dns-client-server DNS Server: supporting all types of queries and replies. Shoul

Nishant Badgujar 1 Feb 15, 2022
Most Simple & Powefull web3 Trade Bot (WINDOWS LINUX) Suport BSC ETH

Most Simple & Powefull Trade Bot (WINDOWS LINUX) What Are Some Pros And Cons Of Owning A Sniper Bot? While having a sniper bot is typically an advanta

GUI BOT 4 Jan 25, 2022
A plugin for modmail-bot for stealing,making ,etc emojis

EmojiPlugin for the Modmail-bot My first plugin .. its very Basic I will make more and better too Only 3 commands for now emojiadd-supports .jpg, .png

1 Dec 28, 2021
Demonstrate how GitHub OIDC token getting should be included in boto3

boto3 should add direct support for AssumeRoleWithWebIdentity for GitHub Actions There is a aws-actions/configure-aws-credentials action that will get

Ben Kehoe 11 Aug 29, 2022
Tickergram is a Telegram bot to look up quotes, charts, general market sentiment and more.

Tickergram is a Telegram bot to look up quotes, charts, general market sentiment and more.

Alberto Ortega 25 Nov 26, 2022
BleachBit system cleaner for Windows and Linux

BleachBit BleachBit cleans files to free disk space and to maintain privacy. Running from source To run BleachBit without installation, unpack the tar

1.9k Jan 06, 2023
Random-backlog-tweet - Pick a page from a sitemap at random and prep a tweet button for it

Random-backlog-tweet - Pick a page from a sitemap at random and prep a tweet button for it

Paul O'Leary McCann 0 Dec 01, 2022
Properly-formatted dynamic timestamps for Discord messages

discord-timestamps discord-timestamps generates properly-formatted dynamic timestamps for Discord messages, with support for Arrow objects. format

Ben Soyka 2 Mar 10, 2022