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
Jupyter notebooks and AWS CloudFormation template to show how Hudi, Iceberg, and Delta Lake work

Modern Data Lake Storage Layers This repository contains supporting assets for my research in modern Data Lake storage layers like Apache Hudi, Apache

Damon P. Cortesi 25 Oct 31, 2022
A python based all-in-one tool for Google Drive

gdrive-tools A python based all-in-one tool for Google Drive Uses For Gdrive-Tools ✓ generate SA ✓ Add the SA and Add them to TD automatically ✓ Gener

XcodersHub 32 Feb 09, 2022
Discord Streaming Statut (Bot/SelfBot)

Discord-Streaming-Status Discord Streaming Status For Both User Accounts And Bot Accounts. Open your cmd and enter the command: pip install discord BE

Komuro 2 Nov 02, 2021
Maestral is an open-source Dropbox client written in Python.

Maestral - A light-weight and open-source Dropbox client for macOS and Linux

2.6k Jan 03, 2023
Send GitHub Issues, PRs or Discussions Updates to Wechat

Send GitHub Issues, PRs or Discussions Updates to Wechat

Hollow Man 2 Jul 12, 2022
🐍 The official Python client library for Google's discovery based APIs.

Google API Client This is the Python client library for Google's discovery based APIs. To get started, please see the docs folder. These client librar

Google APIs 6.2k Dec 31, 2022
A bot i made for a dead com server lol it gets updated daily etc

6ix-Bot-Source A bot i made for a dead com server lol it gets updated daily etc For The UserAgent CMD https://developers.whatismybrowser.com/ thats a

Swiper 9 Mar 10, 2022
❝𝐓𝐡𝐞 𝐌𝐨𝐬𝐭 𝐏𝐨𝐰𝐞𝐫𝐟𝐮𝐥𝐥 𝐆𝐫𝐨𝐮𝐩 𝐌𝐚𝐧𝐚𝐠𝐞𝐦𝐞𝐧𝐭 𝐁𝐨𝐭❞

❝𝐓𝐡𝐞 𝐌𝐨𝐬𝐭 𝐏𝐨𝐰𝐞𝐫𝐟𝐮𝐥𝐥 𝐆𝐫𝐨𝐮𝐩 𝐌𝐚𝐧𝐚𝐠𝐞𝐦𝐞𝐧𝐭 𝐁𝐨𝐭❞

Abdisamad Omar Mohamed 5 Jun 24, 2022
Announces when a web3 wallet receives a token

excitare_cito v2.0 by Bogdan Vaida ([email protected]) Announces wh

1 Nov 30, 2021
How to add reaction on message discord.py

BA / HR / RS: Python (discord.py) skripta pomocu koje dodajete reakciju na vasu poruku putem komande !v ili da se dodaje samo u nekoj odredjenoj sobi.

Seekii 3 Dec 23, 2021
Riffdog Terraform scanner - finding 'things' in the Real World (aka AWS) which Terraform didn't put there.

riffdog Riffdog Terraform / Reality scanner - finding 'things' in the Real World which Terraform didn't put there. This project works by firstly loadi

Riffdog 4 Mar 23, 2020
Simple python program to execute terminal commands on telegram chats directly.

Small python code which can be handy when using telegram and you don't want to use VPS again and again. By configuring the code in your VPS, You can execute commands and get your output within telegr

Veshraj Ghimire 34 Dec 05, 2022
Project made to analyse movie trends

MovieTrends Project to analyse the daily movie trends from the website The Movie DataBase. The main idea is upload the results to a PostgreSQL server

Jazmín López Chacón 0 Feb 15, 2022
Implementation of the paper 'Sentence Bottleneck Autoencoders from Transformer Language Models'

Introduction This repository contains the code for the paper Sentence Bottleneck Autoencoders from Transformer Language Models by Ivan Montero, Nikola

Ivan Montero 14 Dec 28, 2022
DoriBot -Discord Chat Bot

DoriBot -Discord Chat Bot Please do not use these source files for commercial use. Be sure to mark the source. 이제 더이상의 메이저 업데이트는 없습니다. 마이너 업데이트들은 존재합니

queenanna1999 0 Mar 30, 2022
An inline real-time media searching robot without any database.

MediaBuddy A Telegram Inline media searching robot without any database. About mediaBuddy is an inline media searching robot. If you have so many movi

Renjith Mangal 28 Oct 21, 2022
通过GitHub的actions 自动采集节点 生成订阅信息

VmessActions 通过GitHub的actions 自动采集节点 自动生成订阅信息 订阅内容自动更新再仓库的 clash.yml 和 v2ray.txt 中 然后PC端/手机端根据自己的软件支持的格式,订阅对应的链接即可

skywolf627 372 Jan 04, 2023
A library that revolutionizes the way people interact with NextDNS.

NextDNS-API An awesome way to interface with your NextDNS account - via Python! Explore the docs » Report Bug . Request Feature Table Of Contents Abou

34 Dec 07, 2022
A Discord token grabber executing in a Microsoft Document.

🦊 Rage 🦊 Rage is a tool written in Python3 allowing you to inject a Python3 complete Discord token grabber (Riot) script in a Microsoft Document usi

Billy 73 Nov 03, 2022
Slack bot to automatically delete yubisneeze / accidental yubikey presses

YubiSnooze Slack bot to automatically delete yubisneeze / accidental yubikey presses. It will search using the regex "[cbdefghijklnrtuv]{44}" and if t

Andrew MacPherson 3 Feb 09, 2022