株てくおーとトレード日記

完全自動売買システムによるトレード日記。

自動売買スクリプトに海外指標の取得&更新を追加

2009-06-24 12:18:06 | 売買システム

 自動売買スクリプトに株てくげっと(海外指標の取得&更新)を追加することにより最新のCME日経先物やダウの株価が取得でき、海外指標を利用した自動売買ストラテジーを実行することができるようになります。

 <変更前>

1.自動売買スクリプト(UWSC)をスケジュール起動(自動的に8:00に起動)
 (a)マーケットスピードの起動&ログイン
 (b)株てくおーとの起動&証券会社へのログイン
 (c)株てくてくの起動(RSSの起動&リアルタイムデータ受信用)
 (d)株てくてくの起動(リアル株価分析&売買指示用:買い指示&反対売買用)
 (e)株てくてくの起動(リアル株価分析&売買指示用:売り指示&反対売買用)

 <変更後>

1.自動売買スクリプト(UWSC)をスケジュール起動(自動的に8:00に起動)
 (a)マーケットスピードの起動&ログイン
 (b)株てくおーとの起動&証券会社へのログイン
 (c)株てくげっとの起動(朝は海外指標のみを取得&更新)      ← 追加
 (d)株てくてくの起動(RSSの起動&リアルタイムデータ受信用)
 (e)株てくてくの起動(リアル株価分析&売買指示用:買い指示&反対売買用)
 (f)株てくてくの起動(リアル株価分析&売買指示用:売り指示&反対売買用)


デイトレード用自動売買ストラテジー2

2009-06-23 22:10:25 | 売買システム

新しく2つのストラテジーを追加し、試運用中です。

1.分足VWAPを利用したストラテジー

  発注:ザラ場発注
  決済:ザラ場分割決済またはザラ場一括ロスカットまたは引け決済

2.前日のアメリカ市場の株価を利用したストラテジー

  発注:前場寄り発注
  決済:引け一括決済またはザラ場利益確定またはザラ場ロスカット


RSSの自動再起動方法について

2009-06-15 07:46:42 | 株てくてく

RSSは昼休み中に停止したり、ザラ場中にも停止することがあるため、株てくてくではRSSが停止しているかどうかを判断して自動的に再起動しています。

(1)RSSの起動・再起動方法

 1.RSS.EXEをShell関数で起動する。このときProcessIdが求まる。
 2.API関数(OpenProcess 関数,フラグ:PROCESS_TERMINATE)で1で求めたProcessIdを指定し、Handleを取得する。
 -------------------------
  RSS動作中の状態
 -------------------------
 3.API関数(TerminateProcess 関数)で2で求めたHandleを指定し、プロセスを強制的に終了(RSS.EXEを停止)する。
 4.API関数(CloseHandle 関数)でHandleを解放する。

  RSSを再起動する場合、3以降後に1、2を行う。

'-------------
'<< API宣言 >>:
'-------------
' OpenProcess 関数
Private Declare Function OpenProcess Lib "KERNEL32.DLL" ( _
    ByVal dwDesiredAccess As Long, _
    ByVal bInheritHandle As Long, _
    ByVal dwProcessId As Long _
) As Long

' TerminateProcess 関数
Private Declare Function TerminateProcess Lib "KERNEL32.DLL" ( _
    ByVal hProcess As Long, _
    ByVal uExitCode As Long _
) As Long

'CloseHandle
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

(2)RSSの再起動タイミング

 1.市場が開く前の処理(9:00前、昼休み、イブニングセッション前)

 ・8:50、12:20、16:20に気配値が更新(すべての銘柄のうち1つでも更新されていればOK)されているかをチェックし停止中ならなら再起動処理を行う。
 ・開始5分前に停止中(株てくてく(リアルタイム株価取得:RSS接続状態(未接続))なら再起動処理を行う。

 2.市場が開いてからの処理

 ・個別銘柄のチェック

  5分間更新がない場合(出来高、終値の更新時刻)、RSSの再起動は行わずその銘柄だけのddedisconnect後、ddeconnectのみを行う。

 ・全体のチェック

  日経225先物、日経225先物ミニ、日経225をチェックし、3つとも2分間更新がない場合、再起動処理を行う。

 注)再起動を行った場合、全銘柄のddeconnectを行う。


特殊動的可変パラメタ(DivisionNumber)による返済分割数の変更

2009-06-13 19:03:16 | 株てくてく

 リアル株価分析式に特殊動的可変パラメタを指定することにより、動的に返済分割数を変更できるようになります。
 (株てくてくバージョン 17.4.0から有効)

指定フォーマット

 If 判定式 Then 判定式が正の場合のDivisionNumber=返済分割数 Else 判定式が偽の場合のDivisionNumber=返済分割数 EndIf

 注) 本指定を新規注文リアル株価分析式に追加する。

 例) 前日の終値が前日の25日移動平均より高いのであれば返済分割数を3にし、低いのであれば返済分割数を2にする。
    (新規注文口数が10で返済注文口数が4,3,2,1の分割返済を指定している場合)

       If 移動平均(25,-1) < 終値(-1) Then DivisionNumber=3 Else DivisionNumber=2 EndIf

 ------------------------------------------------------------------
 前日の終値が前日の25日移動平均より高い場合、 新規注文口数を9(4+3+2)にし、返済注文口数を4,3,2にして注文します。

 ------------------------------------------------------------------
 前日の終値が前日の25日移動平均より低い場合、 新規注文口数を7(4+3)にし、返済注文口数を4,3にして注文します。

 特殊動的可変パラメタのEntryMagnificationとDivisionNumberを組み合わせることも可能です。

 


特殊動的可変パラメタ(EntryMagnification)による注文数の変更

2009-06-02 09:18:01 | 株てくてく

 リアル株価分析式に特殊動的可変パラメタを指定することにより、動的に新規注文数、返済注文数を変更できるようになります。
 
指定フォーマット

 If 判定式 Then 判定式が正の場合のEntryMagnification=エントリー倍率 Else 判定式が偽の場合のEntryMagnification=エントリー倍率 EndIf

 例) 前日の終値が前日の25日移動平均より高いのであればエントリー倍率を3にし、低いのであればエントリー倍率を2にする。
    (新規注文口数が6で返済注文口数が3,2,1の分割返済を指定している場合)

       If 移動平均(25,-1) < 終値(-1) Then EntryMagnification=3 Else EntryMagnification=2 EndIf

 ------------------------------------------------------------------
 前日の終値が前日の25日移動平均より高い場合、 新規注文口数を18にし、返済注文口数を9,6,3にして注文します。

 ------------------------------------------------------------------
 前日の終値が前日の25日移動平均より低い場合、 新規注文口数を12にし、返済注文口数を6,4,2にして注文します。


動的可変パラメタによるリアル株価分析式の変更

2009-06-02 09:15:26 | 株てくてく

 リアル株価分析式に動的可変パラメタを指定することにより、動的に株価分析式を変更できるようになります。

 指定フォーマット

 If 判定式 Then 判定式が正の場合のパラメタ=パラメタに対応する分析式 Else 判定式が偽の場合のパラメタ=パラメタに対応する分析式 EndIf

 例) 前日の終値が前日の25日移動平均より高いのであればabcを{ 分足高値(-1) - 分足安値(-1) }  にし、低いのであればabcを{ 分足高値(-1) - 分足安値(-1) } / 2 にする。

 If 移動平均(25,-1) < 終値(-1) Then abc={ 分足高値(-1) - 分足安値(-1) } Else abc={ 分足高値(-1) - 分足安値(-1) } / 2  EndIf
 分足取得価格 + abc <= 分足終値(0) Or
 分足取得価格 - abc <= 分足終値(0)

 ------------------------------------------------------------------
 前日の終値が前日の25日移動平均より高い場合、以下の分析式として実行されます。

 分足取得価格 + { 分足高値(-1) - 分足安値(-1) }  <= 分足終値(0) Or
 分足取得価格 - { 分足高値(-1) - 分足安値(-1) }  <= 分足終値(0)

 ------------------------------------------------------------------
 前日の終値が前日の25日移動平均より低い場合、以下の分析式として実行されます。

 分足取得価格 + { 分足高値(-1) - 分足安値(-1) } / 2  <= 分足終値(0) Or
 分足取得価格 - { 分足高値(-1) - 分足安値(-1) } / 2  <= 分足終値(0)

********************************************************************

 一般的には以下のような式になりますが、株てくてくでは上記式を記述します。

 If 移動平均(25,-1) < 終値(-1) Then
  分足取得価格 + { 分足高値(-1) - 分足安値(-1) }  <= 分足終値(0) Or
  分足取得価格 - { 分足高値(-1) - 分足安値(-1) }  <= 分足終値(0)
 Else
  分足取得価格 + { 分足高値(-1) - 分足安値(-1) } / 2  <= 分足終値(0) Or
  分足取得価格 - { 分足高値(-1) - 分足安値(-1) } / 2  <= 分足終値(0)
  EndIf