dukascopy 0.1.5 copy "dukascopy: ^0.1.5" to clipboard
dukascopy: ^0.1.5 copied to clipboard

A Dart wrapper for fetching data from Dukascopy Bank SA API.

example/dukascopy_example.dart

import 'package:dukascopy/dukascopy.dart';

void main() async {
  // Load instrument groups
  final groups = await fetchInstrumentGroups();
  print('Groups: ${groups.keys}');

  // Fetch 5 days of EUR/USD daily data:
  final start = DateTime.utc(2025, 1, 1);
  final dailyRows = await fetch(
    instrument: 'EUR/USD',
    interval: '1DAY',
    offerSide: 'B',
    lastUpdateMillis: start.millisecondsSinceEpoch,
    limit: 5,
  );
  dailyRows.forEach((row) {
    print(
        'Timestamp=${row[0]}, OHLC=[${row[1]},${row[2]},${row[3]},${row[4]}], vol=${row[5]}');
  });

  // Stream tick data for the next 10 seconds:
  final now = DateTime.now().toUtc();
  await for (final tick in stream(
    instrument: 'EUR/USD',
    interval: 'TICK',
    offerSide: 'B',
    startMillis: now.millisecondsSinceEpoch,
    endMillis: now.add(const Duration(seconds: 10)).millisecondsSinceEpoch,
    limit: 10,
  )) {
    print('Tick @${tick[0]}: bid=${tick[1]}, ask=${tick[2]}');
  }

  final rawRows = await fetch(
    instrument: 'EUR/USD',
    interval: '1DAY',
    offerSide: 'B',
    lastUpdateMillis: start.millisecondsSinceEpoch,
    limit: 5,
  );

  final candles = rawRows.map((row) => Candle.fromRaw(row)).toList();
  for (var c in candles) {
    print(c);
  }
}
2
likes
150
points
32
downloads

Publisher

unverified uploader

Weekly Downloads

A Dart wrapper for fetching data from Dukascopy Bank SA API.

Documentation

API reference

License

MIT (license)

Dependencies

http, intl

More

Packages that depend on dukascopy