またろうのシストレブログ

マネックス証券が提供しているトレードステーションと、MT4などシストレ関連について色々書きます。株と自動売買、EasyLanguageについても。

売気配・買気配をチャートにして描いてみる



自動売買するならスキャルピングでやってみたいと考える人はそれなりにいるかと思います。

今回は板の売気配・買気配をチャート上に描いてみます。
売気配・買気配は別の関数にして、インジケーターで描写します。

売気配・買気配

関数
REALTIME_BID

variables:
	intrabarpersist bool RealTime( false ) ;

once ( GetAppInfo( aiRealTimeCalc ) = 1 )
	begin
	RealTime = true ;
	end ;
	
if RealTime then { real-time tick - not on bar in history }
	REALTIME_BID = InsideBid
else
	REALTIME_BID = -1 ;

REALTIME_ASK

variables:
	intrabarpersist bool RealTime( false ) ;

once ( GetAppInfo( aiRealTimeCalc ) = 1 )
	begin
	RealTime = true ;
	end ;

if RealTime then { real-time tick - not on bar in history }
	REALTIME_ASK = InsideAsk
else
	REALTIME_ASK = -1 ;

インジケーター

vars:
	BidValue(0),
	AskValue(0);

BidValue = REALTIME_BID;
AskValue = REALTIME_ASK;

IF BidValue = -1 then
	NOPLOT(1)
ELSE
	Plot1(BidValue, !("買い気配"), Red, Default, 1);

If AskValue = -1 then
	NOPLOT(2)
ELSE
	Plot2(AskValue, !("売り気配"), Blue, Default, 1);

f:id:tsukinowaapp:20180703094917j:plain

1ティックチャート上に描写します。
赤が買気配、青が売気配、灰色が売買された株価(終値)、緑が移動平均(5)、オレンジが移動平均(25)です

見ての通り、1ティックだと線がジグザグするのでストラテジーを組むうえで結構使い辛いかと思います。
なので買気配と売気配を合計して2で割ったものを一定期間で平均化します。

気配の平均化

関数
ITA_AVG

inputs: 
	AvgProp(NumericSimple);

variables:
	intrabarpersist bool RealTime(false),
	double Avg(5),
	int BarCount(0),
	double TempProp(1);
	
once ( GetAppInfo( aiRealTimeCalc ) = 1 )
begin
	RealTime = true ;
end;
	
if RealTime then
BEGIN

	Avg = (InsideBid + InsideAsk) / 2;

	BarCount += 1;
	
	IF BarCount < AvgProp then
		TempProp = BarCount 
	ELSE
		TempProp = AvgProp;
	
	ITA_AVG = Average(Avg, TempProp);

END 
else
BEGIN
	ITA_AVG = -1;
END;

インジケーター

inputs: 
	AvgColor(Yellow),
	UpColor(Red),
	DownColor(Blue),
	AvgProp(5);

vars: 
	Answer(0);

Answer = ITA_AVG(AvgProp);

IF Answer = -1 then
BEGIN
	NOPLOT(1);
END
ELSE
BEGIN
	IF Answer < Answer[1] then
		Plot1(Answer, !( "板平均" ), DownColor, Default, 1)
	ELSE if Answer > Answer[1] then
		Plot1(Answer, !( "板平均" ), UpColor, Default, 1)
	ELSE
		Plot1(Answer, !( "板平均" ), AvgColor, Default, 1);
end;

f:id:tsukinowaapp:20180703105620j:plain


順に5本、25本、50本、灰色が売買された株価(終値)、緑が移動平均(5)、オレンジが移動平均(50)です。
移動平均より上下の動きが緩やかになります。
ただ、50本まで行くと移動平均と大差ない線になりますね。

次回はこの関数を使ってストラテジーを組んでみます。