アルゴ

概要

cAlgo.API の主要なインターフェースのためのコンテナクラスです。

シグネチャ

1
public class Algo

 

名前空間

cAlgo.API.Internals

メソッド

BeginInvokeOnMainThread

概要

指定されたコードをcBotまたはインジケータのメインスレッドで非同期的に呼び出します。

シグネチャ

1
public void BeginInvokeOnMainThread(Action action)

 

パラメータ

名前説明
actionActionメインのcBot/インジケータスレッドで呼び出すコード

戻り値

void

RefreshData

概要

MarketSeries、Positions、PendingOrders、Historyなどを更新し、スレッドスリープの後に保留中のイベントを送信します。メインスレッドをスリープさせる場合は、スレッドが再開された後にRefreshDataを呼び出して、スレッドがスリープしている間に保留されていたイベントを送信する必要があります。

シグネチャ

1
public void RefreshData()

 

戻り値

void

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 using cAlgo.API;
 using System.Linq;
 using System.Threading; 
 namespace NewcBot
 {
     [Robot(AccessRights = AccessRights.None)]
     public class NewcBot : Robot
     {
         protected override void OnStart()
         {
             var executionResults = new TradeOperation[50];
             for (var i = 0; i< 50; i++)
             {
                 executionResults[i] = ExecuteMarketOrderAsync(i % 2 == 0 ? TradeType.Buy : TradeType.Sell, SymbolName, Symbol.VolumeInUnitsMin);
             }
             Print("すべての注文が送信されました");
             while (executionResults.Any(operation => operation.IsExecuting))
             {
                 Print("待機中...");
                 Thread.Sleep(100);
                 // RefreshDataメソッドの呼び出しを削除すると
                 // cBotメインスレッドがスタックし
                 // 残りのコードが実行されなくなります
                 RefreshData();
             }
             Print("ポジションを閉じる");
             foreach (var position in Positions)
             {
                 if (position.TradeType == TradeType.Sell) continue;
                 _ = ClosePositionAsync(position);
             }
         }
     }

CreateDataSeries

概要

IndicatorDataSeriesの初期化。

シグネチャ

1
public IndicatorDataSeries CreateDataSeries()

 

戻り値

IndicatorDataSeries

1
2
3
4
5
6
7
8
9
 private IndicatorDataSeries series;
 protected override void Initialize()
 {
     series = CreateDataSeries();
 }
 public override void Calculate(int index)
 {
     series[index] = (MarketSeries.Close[index] + MarketSeries.Open[index]) / 2;
 }

スリープ (3)

スリープ (1 of 3)

概要

指定された時間が経過するまでアルゴリズムを一時停止します。

シグネチャ

1
public void Sleep(TimeSpan timespan)

 

パラメータ

名前説明
timespanTimeSpanアルゴリズムがイベントに反応しない期間

戻り値

void

関連チュートリアル

  • スリープ機能

スリープ (2 of 3)

概要

指定されたミリ秒数が経過するまでアルゴリズムを一時停止します。

シグネチャ

1
public void Sleep(int milliseconds)

 

パラメータ

名前説明
millisecondsintアルゴリズムが一時停止するミリ秒数

戻り値

void

関連チュートリアル

  • スリープ機能

スリープ (3 of 3)

概要

指定された日時までアルゴリズムを一時停止します。

シグネチャ

1
public void Sleep(DateTime dateTime)

 

パラメータ

名前説明
dateTimeDateTimeアルゴリズムが一時停止する日時

戻り値

void

関連チュートリアル

  • スリープ機能

Print (1 of 3)

概要

指定されたオブジェクトのテキスト表現をログに出力します。

シグネチャ

1
public void Print(object value)

 

パラメータ

名前説明
valueobject出力するオブジェクト。

戻り値

void

1
 Print(Account.Positions.Count);

Print (2 of 3)

概要

ログにメッセージを出力します

シグネチャ

1
public void Print(object[] parameters)

 

パラメータ

名前説明
parametersobject[]出力するパラメータ

戻り値

void

1
 Print(Account.Balance, " ", Account.Equity);

Print (3 of 3)

概要

ログにメッセージを出力します。

シグネチャ

1
public void Print(string message, object[] parameters)

 

パラメータ

名前説明
messagestring出力するメッセージ。
parametersobject[]パラメータ (オプション)

戻り値

void

1
 Print("現在の残高は {0}、資産は {1} です。", Account.Balance, Account.Equity);

プロパティ

InstanceId

概要

現在実行中のインスタンスの一意のIDを返します。

シグネチャ

1
public string InstanceId {get;}

 

戻り値

string

LocalStorage

概要

ローカルストレージAPIへのアクセスを提供します。

シグネチャ

1
public LocalStorage LocalStorage {get;}

 

戻り値

LocalStorage

関連チュートリアル

  • ローカルストレージ

Indicators

概要

組み込みのインジケータへのアクセスを提供します。

シグネチャ

1
public IIndicatorsAccessor Indicators {get;}

 

戻り値

IIndicatorsAccessor

1
2
3
4
5
 protected override void Initialize()
 {
     //MarketSeriesの価格データをインジケータのパラメータとして使用する
     _ma = Indicators.SimpleMovingAverage(MarketSeries.Close, 20);
 }

関連チュートリアル

  • チャートインジケータの管理

Notifications

概要

サウンドやメールなどの通知を表します。

シグネチャ

1
public INotifications Notifications {get;}

 

戻り値

INotifications

1
 Notifications.PlaySound(@"C:\Windows\Media\notify.wav");

TimeFrame

概要

TimeFrameの値へのアクセスを提供します。

シグネチャ

1
public TimeFrame TimeFrame {get;}

 

戻り値

TimeFrame

1
2
3
4
 if(TimeFrame == TimeFrame.Daily)
 {           
    //...
 } 

Server

概要

サーバーに関連する情報を提供します。

シグネチャ

1
public IServer Server {get;}

 

戻り値

IServer

1
2
3
4
 protected override void OnTick()
 {
     Print("サーバーの時間は: {0}", Server.Time);
 }

TimeZone

概要

cBot またはインジケータのタイムゾーン。

シグネチャ

1
public TimeZoneInfo TimeZone {get;}

 

戻り値

TimeZoneInfo

Positions

概要

アカウントのすべてのオープンポジションのリスト。

シグネチャ

1
public Positions Positions {get;}

 

戻り値

Positions

1
2
3
4
5
 foreach (var position in Positions)
 {
     if (position.StopLoss == null)
         ModifyPosition(position, 10, position.TakeProfit);
 }

PendingOrders

概要

アカウントのすべての保留注文の配列。

シグネチャ

1
public PendingOrders PendingOrders {get;}

 

戻り値

PendingOrders

1
2
3
4
5
6
 foreach (var order in PendingOrders)
 {
     if (order.StopLossPips == null)
         ModifyPendingOrder(order, order.TargetPrice, 10, order.TakeProfit,
                             order.ExpirationTime);
 }

History

概要

アカウントのすべての過去の取引を表します。

シグネチャ

1
public History History {get;}

 

戻り値

History

1
2
3
4
 foreach (HistoricalTrade trade in History)
 {
     Print(trade.EntryTime);
 }

Timer

概要

Timerオブジェクトへのアクセスを提供します。

シグネチャ

1
public Timer Timer {get;}

 

戻り値

Timer

1
2
3
4
5
6
7
8
 protected override void OnStart()
 {
     Timer.Start(1);//1秒間隔でタイマーを開始する
 }
 protected override void OnTimer()
 {
     ChartObjects.DrawText("time", Time.ToString("HH:mm:ss"), StaticPosition.TopLeft);
 }

Time

概要

現在のサーバー時間を返します。Server.Timeプロパティのショートカット。

シグネチャ

1
public DateTime Time {get;}

 

戻り値

DateTime

1
2
3
4
 protected override void OnTick()
 {
     Print("サーバーの時間は: {0}", Time);
 }

TimeInUtc

概要

現在のサーバー時間をUTCで返します。Server.TimeInUtcプロパティのショートカット。

シグネチャ

1
public DateTime TimeInUtc {get;}

 

戻り値

DateTime

1
2
3
4
 protected override void OnTick()
 {
     Print("サーバーのUTC時間は: {0}", TimeInUtc);
 }

RunningMode

概要

cBotがリアルタイムで実行されているか、サイレントバックテストモード、ビジュアルバックテストモード、または最適化モードで実行されているかを定義します。

シグネチャ

1
public RunningMode RunningMode {get;}

 

戻り値

RunningMode

IsBacktesting

概要

cBotがバックテストモードにある場合はTrue、それ以外の場合はFalse。

シグネチャ

1
public bool IsBacktesting {get;}

 

戻り値

bool

1
2
3
4
 if(IsBacktesting)
 {
    Print(MarketSeries.OpenTime.LastValue);
 }

Application

概要

アプリケーションを表します。

シグネチャ

1
public Application Application {get;}

 

戻り値

Application

AssetConverter

概要

資産を別の資産に変換します。

シグネチャ

1
public IAssetConverter AssetConverter {get;}

 

戻り値

IAssetConverter

関連チュートリアル

  • 通貨変換

MarketSessions

概要

現在の市場セッションを返します。

シグネチャ

1
public MarketSession MarketSessions {get;}

 

戻り値

MarketSession

関連チュートリアル

  • 取引セッション

Chart

概要

cBotまたはインジケータが起動されているチャートを表します。

備考

チャートは、プラグインによって実行されたインジケータの場合、nullになることがあります。

シグネチャ

1
public Chart Chart {get;}

 

戻り値

Chart

Assets

概要

利用可能なすべての資産のリストを返します。

シグネチャ

1
public Assets Assets {get;}

 

戻り値

Assets

SymbolName

概要

シンボル名を取得または設定します。

シグネチャ

1
public string SymbolName {get;}

 

戻り値

string

Symbols

概要

シンボル名を取得します。

シグネチャ

1
public Symbols Symbols {get;}

 

戻り値

Symbols

Symbol

概要

現在のシンボルを表し、そのプロパティと特定のメソッドにアクセスを提供します。

シグネチャ

1
public Symbol Symbol {get;}

 

戻り値

Symbol

1
2
3
4
5
6
 var ask = Symbol.Ask;
 var bid = Symbol.Bid;
 var digits = Symbol.Digits;
 var pip = Symbol.PipSize;
 var maxVolume = Symbol.VolumeMax;
 var minVolume = Symbol.VolumeMin;

Bid

概要

シンボルのビッド価格を取得します。

シグネチャ

1
public double Bid {get;}

 

戻り値

double

Ask

概要

シンボルのアスク価格を取得します。

シグネチャ

1
public double Ask {get;}

 

戻り値

double

Watchlists

概要

ウォッチリストを取得します。

シグネチャ

1
public Watchlists Watchlists {get;}

 

戻り値

Watchlists

Bars

概要

Barオブジェクトのコレクション。

シグネチャ

1
public Bars Bars {get;}

 

戻り値

Bars

関連チュートリアル

  • バーイベント

MarketData

概要

マーケットデータの深さにアクセスを提供します。

シグネチャ

1
public MarketData MarketData {get;}

 

戻り値

MarketData

1
2
 private MarketDepth _md;
 _md = MarketData.GetMarketDepth("GBPUSD");

Http

概要

HTTPリクエストを送信します。

シグネチャ

1
public Http Http {get;}

 

戻り値

Http

関連チュートリアル

  • ネットワークアクセス

ChartIndicators

概要

アルゴリズムのChartIndicatorsを取得します。

シグネチャ

1
public ChartIndicators ChartIndicators {get;}

 

戻り値

ChartIndicators

関連チュートリアル

  • チャートインジケータの管理

ChartRobots

概要

アルゴリズムのChartRobotsを取得します。

シグネチャ

1
public ChartRobots ChartRobots {get;}

 

戻り値

ChartRobots

AlgoRegistry

概要

インストールされているアルゴリズムにアクセスを提供します。

シグネチャ

1
public AlgoRegistry AlgoRegistry {get;}

 

戻り値

AlgoRegistry

関連チュートリアル

  • アルゴリズムレジストリ

ChartObjects

シグネチャ

1
public ChartObjects ChartObjects {get;}

 

戻り値

ChartObjects

MarketSeries

シグネチャ

1
public MarketSeries MarketSeries {get;}

 

戻り値

MarketSeries

イベント

MarketSessionsChanged

概要

マーケットセッションが変更された時に発生します。

シグネチャ

1
public event Action<MarketSessionChangedEventArgs> MarketSessionsChanged;
目次

このページについて