画像はこちら
双等線戦略を学ぶとき,開き,平止点の研究,コードの書き込みについて直感的に観察することは不可能であり,またコードがディスクとテストするときに直感的でないため, 直感的に表示されるグラフを書きたいのですが,Zの大きなコード例に基づいて,シンプルなグラフテンプレートを書きました. 自分で書いた指標は,K線図で表示される線を表示し, etc.) をゆっくりと追加するつもりです. これはまだテストされていないので,誰もが学ぶために提供されています. シンプルな使い方: 仮出力は2つあります.
$.SignOP(time,price,amount,state)
$.Draw(records)
$.SignOP ((time,price,amount,state) この関数は,開場平成の直後に使用され,開場平成からK行までの4つのパラメータを表示します. $.Draw (※records) この関数は,K 文字列を描くために使われます.この関数は,策略のメインループの開始に置く必要があります.パラメータはnull に転送され,関数自身を取得できます.
テンプレートでアクセスコードを入力する30行目のコードの例を以下に示します. このコードには3つの文しか含まれていません.
function main(){
var STATE_IDLE = -1;//空闲状态
var state = STATE_IDLE;
var opAmount = 0;
var initAccount = $.GetAccount();
Log(initAccount);//输出账户初始信息
while(true){
---------------------------------------------------------------------------------------------
$.Draw(null);// 画图表K线
--------------------------------------------------------------------------------------------
if(state === STATE_IDLE){
var n = $.Cross(FastPeriod,SlowPeriod);
if(Math.abs(n) >= EnterPeriod){
opAmount = parseFloat((initAccount.Stocks * PositionRatio).toFixed(3));
var obj = n > 0 ? $.Buy(opAmount) : $.Sell(opAmount);
if(obj){
opAmount = obj.amount;
state = n > 0 ? PD_LONG : PD_SHORT;
Log("开仓详情",obj,"交叉周期",n);
}
---------------------------------------------------------------------------------------------
$.SignOP((new Date()).getTime(),obj.price,obj.amount,(n > 0 ? 1 : 2) ); //标记买入 卖出 开仓
---------------------------------------------------------------------------------------------
}
}else{
var n = $.Cross(ExitFastPeriod,ExitSlowPeriod);
if(Math.abs(n) >= ExitPeriod && ((state === PD_LONG && n < 0 ) || (state === PD_SHORT && n > 0))){
var obj = state === PD_LONG? $.Sell(opAmount) : $.Buy(opAmount);
---------------------------------------------------------------------------------------------
$.SignOP((new Date()).getTime(),obj.price,obj.amount,0); //标记平仓
---------------------------------------------------------------------------------------------
state = STATE_IDLE;
var nowAccount = $.GetAccount();
LogProfit(nowAccount.Balance - initAccount.Balance,"钱:",nowAccount.Balance,"币:",nowAccount.Stocks,"平仓详情:",obj,"交叉周期",n);
}
}
Sleep(Interval*1000);//暂停10秒
}
}
コードはまだ完璧ではありません. 大神斧は完璧です.
レイルml良かった!
発明者 量化 - 微かな夢改善を続けよう~~ プラットフォームの利用を向上させよう~~