avatar of 发明者量化-小小梦 发明者量化-小小梦
집중하다 사신
4
집중하다
1271
수행원

신입생 복지, 간단한 차트 템플릿

만든 날짜: 2016-05-22 23:17:48, 업데이트 날짜:
comments   2
hits   2148

간단한 그래프 템플릿입니다.

위 사진: 신입생 복지, 간단한 차트 템플릿

왜냐하면 이진평선 전략을 배울 때, 상장 개시, 상장 평점 연구, 그리고 코드를 작성할 때 직관적으로 관찰할 수 없기 때문이고, 또 디스크 테스트를 할 때 직관적으로 관찰할 수 없기 때문이고, 로그 헤드라인을 뒤돌아보며, 직관적으로 표시되는 차트를 작성하고 싶었습니다. Z 크기의 코드 예제를 기반으로 간단한 차트 템플릿을 작성했습니다. 이제 기능이 매우 간단합니다. 실시간 K 라인을 표시하고, 포지션 개시 및 매각 지점을 표시합니다. 다른 기능은 추가되지 않았습니다. 본인이 작성한 지표가 선으로 표시되고, K 선 도표에서 표시됩니다. .), 천천히 추가 할 계획입니다. 간단한 사용법: 임시 수출 함수에는 2가지가 있습니다:

$.SignOP(time,price,amount,state)
$.Draw(records)

\(.SignOP ((time,price,amount,state) 이 함수는 포지션 평준화 후 바로 사용되며, 포지션 평준화 후 K선까지 사용된다. \).Draw(records) 이 함수는 K 라인을 그리는 용도로 쓰이고, 이 함수는 전략의 주요 루프의 시작에 배치되어야 하며, arguments는 null로 전달되어 함수 자체를 얻을 수 있다.

아래는 Z 크기의 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秒
	}
}
시스템에서 생성된 K선 도표

신입생 복지, 간단한 차트 템플릿

템플릿에서 그린 K선 도표

신입생 복지, 간단한 차트 템플릿

코드는 아직 완성되지 않았는데, 대신 斧正, 完善。 抛引玉, 歡迎拍。