BItMEXメモ

execInstで指定する
ReduceOnly は減少限定。

これを指定するとうっかり大きく反対注文してもドテンにならない。



contingencyType で
OneTriggersTheOtherを指定すると「トリガ時に決済」。
ポジションを減らすのみの注文になる。

C++でDATE 型を GMT に変換する

time_t var_time;

COleDateTime var_gmtime;
COleDateTime var_localtime;

COleDateTimeSpan var_diff;

time(&var_time);

tm tmp_tm;
gmtime_s(&tmp_tm, &var_time);
var_gmtime = mktime(&tmp_tm);

localtime_s(&tmp_tm, &var_time);
var_localtime = mktime(&tmp_tm);

var_diff = var_localtime - var_gmtime;
var_datetime = var_datetime - var_diff;

C# でラムダ式 ThreadクラスとThreadStartデリゲート

class Program  
{  
    static void Main(string[] args)  
    {  
        string message = "スレッド内で表示する文字列:";  
        // 別スレッドで処理するラムダ式  
        ThreadStart action = () =>  
        {  
            for (int i = 0; i < 5; i++)  
            {  
                // 1秒スリープ  
                Thread.Sleep(1000);  
                // Mainメソッドのローカル変数を参照  
                Console.WriteLine(message + i);  
            }  
            // Mainメソッドの引数を参照  
            Console.WriteLine("argsの型={0}, argsのレングス={1}",  
                                      args.ToString(), args.Length);  
        };  
  
        // スレッドクラスにThreadStartデリゲート(今回はラムダ式)を渡す  
        Thread thread = new Thread(action);  
        // スレッド開始  
        thread.Start();  
        // スレッド終了まで待つ  
        thread.Join();  
  
        // <結果>  
        //スレッド内で表示する文字列:0  
        //スレッド内で表示する文字列:1  
        //スレッド内で表示する文字列:2  
        //スレッド内で表示する文字列:3  
        //スレッド内で表示する文字列:4  
        //argsの型=System.String[], argsのレングス=0  
    }  
}  

C# JSON.Netを使ってJSONをデシリアライズ

var jobj = JsonConvert.DeserializeObject<Newtonsoft.Json.Linq.JContainer>(arg);
listBoxKen.Items.AddRange(jobj["response"]["prefecture"].ToArray());

こんな感じ。

こんなふうにforeachで分離できたり

foreach (var item2 in jobj)
{


}


項目があるかどうかはこうチェックできる

var item = jobj.SelectToken("table");
if (item != null){
...
}