늘 감사합니다.
아래 수식을 변경해 주시면 감사하겠습니다
아래 수식에서 b1 매수후 수익청산되면 더이상 진입하지 않게 해주십시요.
또 b1과 b2까지 매수후 수익청산되도 더이상 진입하지 않게 해주시면 감사하겠습니다.
고맙습니다.
input : N(10),금액1(10000);
var : cnt(0),entry(0);
if Bdate != bdate[1] Then
{
entry = 0;
var1 = 0;
Var2 = 0;
For cnt = 1 to N
{
if var1 == 0 and Var2 == 0 and DayClose(cnt) >= DayClose(cnt+1)*1.08Then
{
var1 = DayClose(cnt);
Var2 = DayClose(cnt+1);
}
}
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition != MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if MarketPosition == 0 and var1 > 0 and entry < 1 Then
Buy("b1",AtLimit,(var1+Var2)/2,Floor(금액1/min(NextBarOpen,(var1+Var2)/2)));
if MarketPosition == 1 Then
{
if MarketPosition != MarketPosition[1] Then
{
value1 = var1[BarsSinceEntry];
Value2 = var2[BarsSinceEntry];
}
Buy("b2",AtLimit,Var2,Floor(금액1/min(NextBarOpen,Var2)));
ExitLong("bx1",atlimit,AvgEntryPrice*1.30);
}
답변 1
예스스탁
예스스탁 답변
2022-08-19 10:21:34
안녕하세요
예스스탁입니다.
올리신 내용이면 각 진입을 전체 차트에서 1회씩만 하게 하는 내용입니다.
위 내용으로 수정해 드립니다.
input : N(10),금액1(10000);
var : cnt(0),entry1(0),entry2(0);
if Bdate != bdate[1] Then
{
var1 = 0;
Var2 = 0;
For cnt = 1 to N
{
if var1 == 0 and Var2 == 0 and DayClose(cnt) >= DayClose(cnt+1)*1.08 Then
{
var1 = DayClose(cnt);
Var2 = DayClose(cnt+1);
}
}
}
if CurrentContracts > CurrentContracts[1] Then
{
if LatestEntryName(0) == "b1" Then
entry1 = entry1+1;
if LatestEntryName(0) == "b2" Then
entry2 = entry2+1;
}
if MarketPosition == 0 and var1 > 0 and entry1 < 1 Then
Buy("b1",AtLimit,(var1+Var2)/2,Floor(금액1/min(NextBarOpen,(var1+Var2)/2)));
if MarketPosition == 1 Then
{
if MarketPosition != MarketPosition[1] Then
{
value1 = var1[BarsSinceEntry];
Value2 = var2[BarsSinceEntry];
}
if entry2 < 1 Then
Buy("b2",AtLimit,Var2,Floor(금액1/min(NextBarOpen,Var2)));
ExitLong("bx1",atlimit,AvgEntryPrice*1.30);
}
즐거운 하루되세요
> 하늘북 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 늘 감사합니다.
아래 수식을 변경해 주시면 감사하겠습니다
아래 수식에서 b1 매수후 수익청산되면 더이상 진입하지 않게 해주십시요.
또 b1과 b2까지 매수후 수익청산되도 더이상 진입하지 않게 해주시면 감사하겠습니다.
고맙습니다.
input : N(10),금액1(10000);
var : cnt(0),entry(0);
if Bdate != bdate[1] Then
{
entry = 0;
var1 = 0;
Var2 = 0;
For cnt = 1 to N
{
if var1 == 0 and Var2 == 0 and DayClose(cnt) >= DayClose(cnt+1)*1.08Then
{
var1 = DayClose(cnt);
Var2 = DayClose(cnt+1);
}
}
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition != MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if MarketPosition == 0 and var1 > 0 and entry < 1 Then
Buy("b1",AtLimit,(var1+Var2)/2,Floor(금액1/min(NextBarOpen,(var1+Var2)/2)));
if MarketPosition == 1 Then
{
if MarketPosition != MarketPosition[1] Then
{
value1 = var1[BarsSinceEntry];
Value2 = var2[BarsSinceEntry];
}
Buy("b2",AtLimit,Var2,Floor(금액1/min(NextBarOpen,Var2)));
ExitLong("bx1",atlimit,AvgEntryPrice*1.30);
}