input : P(5);
input : 익절틱수(40),손절틱수(40);
input : StartTime(130000),EndTime(060000);
var : Tcond(False);
IF Endtime > starttime Then
SetStopEndofday(Endtime);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
}
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
IF Endtime <= starttime Then
{
SetStopEndofday(0);
}
}
var1 = ma(C,P);
if Tcond == true Then
{
if CrossUp(var1,var1[26]) Then
Buy();
if CrossDown(var1,var1[26]) Then
Sell();
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
수고 많으십니다
지난번 만들어주신 수식인데 너무 감사드립니다
추가로 부탁 드릴게 있습니다
문의드릴 내용은
처음 1계약 진입 했을 때 손실이면 다음은 2계약 진입
2연속 손실이면 다음은 4계약 진입
3연속 손실이면 다음은 8계약 진입
4연속 손실이면 다시 처음으로 1계약 부터 시작
이런 수식을 추가로 부탁드립니다
감사합니다
답변 1
예스스탁
예스스탁 답변
2023-10-19 14:55:43
안녕하세요
예스스탁입니다.
input : P(5);
input : 익절틱수(40),손절틱수(40);
input : StartTime(130000),EndTime(060000);
var : Tcond(False),entry(0),vol(0);
IF Endtime > starttime Then
SetStopEndofday(Endtime);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
}
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
entry = 0;
IF Endtime <= starttime Then
{
SetStopEndofday(0);
}
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
var1 = ma(C,P);
if MarketPosition == 0 Then
if Tcond == true Then
{
if CrossUp(var1,var1[26]) Then
{
if MarketPosition == 0 Then
{
if entry == 0 or (entry >= 1 and PositionProfit(1) > 0) Then
vol = 1;
Else
vol = vol*2;
}
Else
{
if MarketPosition == -1 Then
{
if PositionProfit(0) > 0 Then
vol = 1;
Else
vol = vol*2;
}
}
if vol > 8 Then
vol = 1;
Buy("b",OnClose,Def,vol);
}
if CrossDown(var1,var1[26]) Then
{
if MarketPosition == 0 Then
{
if entry == 0 or (entry >= 1 and PositionProfit(1) > 0) Then
vol = 1;
Else
vol = vol*2;
}
Else
{
if MarketPosition == 1 Then
{
if PositionProfit(0) > 0 Then
vol = 1;
Else
vol = vol*2;
}
}
if vol > 8 Then
vol = 1;
Sell("s",OnClose,Def,vol);
}
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
즐거운 하루되세요
> cjfdk 님이 쓴 글입니다.
> 제목 : 문의드립니다
>
input : P(5);
input : 익절틱수(40),손절틱수(40);
input : StartTime(130000),EndTime(060000);
var : Tcond(False);
IF Endtime > starttime Then
SetStopEndofday(Endtime);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
}
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
Tcond = False;
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
IF Endtime <= starttime Then
{
SetStopEndofday(0);
}
}
var1 = ma(C,P);
if Tcond == true Then
{
if CrossUp(var1,var1[26]) Then
Buy();
if CrossDown(var1,var1[26]) Then
Sell();
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
수고 많으십니다
지난번 만들어주신 수식인데 너무 감사드립니다
추가로 부탁 드릴게 있습니다
문의드릴 내용은
처음 1계약 진입 했을 때 손실이면 다음은 2계약 진입
2연속 손실이면 다음은 4계약 진입
3연속 손실이면 다음은 8계약 진입
4연속 손실이면 다시 처음으로 1계약 부터 시작
이런 수식을 추가로 부탁드립니다
감사합니다