Automatically download data and upload predictions for the Numerai machine learning competition.
This library is a Scala client to the Numerai API. It allows downloading the training data, uploading predictions, and accessing user, submission and competition information.
If you encounter any problems or have suggestions, feel free to open an issue.
To get started, simply add the following lines to your build.sbt file
resolvers += Resolver.bintrayRepo("uuazed", "maven")
libraryDependencies += "uuazed" %% "numerapi" % "0.1.2"
Add this to your build.gradle file:
repositories {
maven {
url "https://dl.bintray.com/uuazed/maven"
}
mavenCentral()
}
dependencies {
compile "uuazed:numerapi_2.13:0.1.2"
}
Make sure you checkout the full usage examples in the examples directory.
In short, using numerapi works like this:
import numerapi.NumerApi
object Main extends App {
val napi = new NumerApi("my_public_id", "my_secret_key")
// download current dataset
napi.downloadDataset("data.zip")
//.. your code to generate predictions
// upload predictions
val submissionId = napi.uploadSubmission("my_predictions.csv")
// get some information from a user's public profile
val user = napi.getPublicUserProfile("uuazed")
println(user)
}
You can also use numerapi from Java!
public class Main {
public static void main(String[] args) {
NumerApi napi = new NumerApi("<my_public_id>", "<my_secret_key>");
// download current dataset
napi.downloadDataset("data.zip");
//.. your code to generate predictions
// upload predictions
String submissionId = napi.uploadSubmission("my_predictions.csv")
System.out.println("submission_id: " + submissionId)
// get some information from a user's public profile
System.out.println(napi.getPublicUserProfile("uuazed"));
}
}
TODO