# XChange
**Repository Path**: mirrors_BYVoid/XChange
## Basic Information
- **Project Name**: XChange
- **Description**: A Financial Exchange Library for Java
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: develop
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2020-09-29
- **Last Updated**: 2026-02-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## [](http://xeiam.com/xchange) XChange
XChange is a Java library providing a simple and consistent API for interacting with over a dozen Bitcoin exchanges providing a consistent interface for trading and accessing market data.
## Important!
The world of Bitcoin changes quickly and XChange is no exception. The best way to stay updated on important announcements is to follow tweets on [Xeiam's Twitter page](https://twitter.com/Xeiam). For the latest bugfixes and features you should use the [snapshot jars] (https://oss.sonatype.org/content/groups/public/com/xeiam/xchange/) or build yourself from the DEVELOP branch. See below for more details about building with Maven. To report bugs and see what issues people are currently working on see the [issues page](https://github.com/timmolter/XChange/issues). There are also most likely some open [bounties](http://xeiam.com/bounties) to be had as well.
## Description
XChange is a library providing a simple and consistent API for interacting with a diverse set of financial security exchanges, including support for Bitcoin.
A complete list of implemented exchanges, data providers and brokers can be found on our [Exchange Support](https://github.com/timmolter/XChange/wiki/Exchange-Support) page.
Usage is very simple: Create an Exchange instance, get the appropriate service, and request data.
## Example
// Use the factory to get the version 2 MtGox exchange API using default settings
Exchange mtGox = ExchangeFactory.INSTANCE.createExchange("com.xeiam.xchange.mtgox.v2.MtGoxExchange");
// Interested in the public polling market data feed (no authentication)
PollingMarketDataService marketDataService = mtGox.getPollingMarketDataService();
// Get the latest ticker data showing BTC to USD
Ticker ticker = marketDataService.getTicker(Currencies.BTC, Currencies.USD);
System.out.println(ticker.toString());
All exchange implementations expose the same API, but you can also directly access the raw data.
Now go ahead and [study some more examples](http://xeiam.com/xchange_examplecode.jsp), [download the thing](http://xeiam.com/xchange_changelog.jsp) and [provide feedback](https://github.com/timmolter/XChange/issues).
## Features
* MIT license
* consistent API across all implemented exchanges
* active development
* very minimal 3rd party dependencies
* modular components
* polling and streaming capability
## More Info
Project Site: http://xeiam.com/xchange
Example Code: http://xeiam.com/xchange_examplecode.jsp
Change Log: http://xeiam.com/xchange_changelog.jsp
Java Docs: http://xeiam.com/xchange/javadoc/index.html
## Wiki
Home: https://github.com/timmolter/XChange/wiki
Design Notes: https://github.com/timmolter/XChange/wiki/Design-Notes
Milestones: https://github.com/timmolter/XChange/wiki/Milestones
Exchange Support: https://github.com/timmolter/XChange/wiki/Exchange-support
New Implementation Best Practices: https://github.com/timmolter/XChange/wiki/New-Implementation-Best-Practices
## Continuous Integration
[](https://travis-ci.org/timmolter/XChange.png)
[Build History](https://travis-ci.org/timmolter/XChange/builds)
## Getting Started
XChange is semantically versioned: http://semver.org
### Non-Maven
Download XChange Release Jars: http://xeiam.com/xchange
Download XChange Snapshot Jars: https://oss.sonatype.org/content/groups/public/com/xeiam/xchange/
#### Compile Dependencies
+- org.java-websocket:Java-WebSocket:jar:1.3.0:compile
+- org.slf4j:slf4j-api:jar:1.7.5:compile
+- org.joda:joda-money:jar:0.9:compile
\- com.github.mmazi:rescu:jar:1.5.0:compile
+- com.fasterxml.jackson.core:jackson-core:jar:2.1.1:compile
+- com.fasterxml.jackson.core:jackson-annotations:jar:2.1.1:compile
+- com.fasterxml.jackson.core:jackson-databind:jar:2.1.1:compile
+- javax.ws.rs:jsr311-api:jar:1.1.1:compile
\- com.google.code.findbugs:jsr305:jar:2.0.1:compile
#### Test Dependencies
+- junit:junit:jar:4.11:test
| \- org.hamcrest:hamcrest-core:jar:1.3:test
\- org.easytesting:fest-assert-core:jar:2.0M10:test
\- org.easytesting:fest-util:jar:1.2.5:test
#### Other Dependencies for Some Examples
+- ch.qos.logback:logback-classic:jar:1.0.13:runtime
| \- ch.qos.logback:logback-core:jar:1.0.13:runtime
+- com.xeiam.xchart:xchart:jar:2.2.1:compile
### Maven
The XChange release artifacts are hosted on Maven Central.
Add the following dependencies in your pom.xml file. You will need at least xchange-core. Add the additional dependencies for the exchange implementations you are interested in. There is example code for all the implementations in xchange-examples.
com.xeiam.xchange
xchange-core
1.10.0
com.xeiam.xchange
xchange-examples
1.10.0
com.xeiam.xchange
xchange-bitcoincharts
1.10.0
com.xeiam.xchange
xchange-bitcurex
1.10.0
com.xeiam.xchange
xchange-bitstamp
1.10.0
com.xeiam.xchange
xchange-blockchain
1.10.0
com.xeiam.xchange
xchange-btcchina
1.10.0
com.xeiam.xchange
xchange-btce
1.10.0
com.xeiam.xchange
xchange-campbx
1.10.0
com.xeiam.xchange
xchange-cavirtex
1.10.0
com.xeiam.xchange
xchange-kraken
1.10.0
com.xeiam.xchange
xchange-mtgox
1.10.0
com.xeiam.xchange
xchange-openexchangerates
1.10.0
For snapshots, add the following repository to your pom.xml file.
sonatype-oss-snapshot
https://oss.sonatype.org/content/repositories/snapshots
The current snapshot version is:
2.0.0-SNAPSHOT
## Building with Maven
install in local Maven repo: `mvn clean install`
create project javadocs: `mvn javadoc:aggregate`
generate dependency tree: `mvn dependency:tree`
check/update all header files: `mvn license:check` and `mvn license:format`
## Bugs
Please report any bugs or submit feature requests to [XChange's Github issue tracker](https://github.com/timmolter/XChange/issues).
## Contributing
If you'd like to submit a new implementation for another exchange, please take a look at [New Implementation Best Practices](https://github.com/timmolter/XChange/wiki/New-Implementation-Best-Practices) first, as there are lots of time-saving tips!
For more information such as a contributor list and a list of known projects depending on XChange, visit the [Main Project Wiki](https://github.com/timmolter/XChange/wiki).
## Donations
[1MHMpzFxx4fRSaeYGSxhyEcgux7j4Gqwsc](https://blockchain.info/address/1MHMpzFxx4fRSaeYGSxhyEcgux7j4Gqwsc)
All donations will be used to pay bounties for new features, refactoring, etc. Please consider donating or even posting your own bounties on our [Issues Page](https://github.com/timmolter/XChange/issues?state=open). Open bounties and bounties paid thus far can be found on Xeiam's [bounties](http://xeiam.com/bounties) page.