Много спрашивают за кликер. Решил написать. Вот сам кликер: _crapware.aidf.org/page/clickermann Самые важные участки кода - Код ожидания алерта: Код: go: $a= //значение hWND окна алерта while(wndfind("Алерт")=0) waitms(100) goto(go) end_cyc hset($a,1) //активация окна getscreen //скрин в графический буфер для анализа, если нужно keypress(#enter) //закрытие окна алерта hset($a,0) //деактивация окна Код анализа цвета: Код: $w= //значение hWND окна для анализа $x1= //координата x верхнего правого угла квадрата для анализа $y1= //координата y верхнего правого угла квадрата для анализа $x2= //координата x нижнего левого угла квадрата для анализа $y2= //координата y нижнего левого угла квадрата для анализа $color= //код цвета, который должен быть найден hset($w,1) //активация окна getscreen //скрин в графический буфер для анализа if_pixel_in($x1,$y1,$x2,$y2,$color) ... здесь прописываются действия если цвет найден ... end_if hset($w,0) //деактивация окна Код поиска изображения: Код: $w= //значение hWND окна для анализа $x1= //координата x верхнего правого угла квадрата для анализа $y1= //координата y верхнего правого угла квадрата для анализа $x2= //координата x нижнего левого угла квадрата для анализа $y2= //координата y нижнего левого угла квадрата для анализа hset($w,1) //активация окна getscreen //скрин в графический буфер для анализа if_picture_in($x1,$y1,$x2,$y2,"изображение.bmp") ... здесь прописываются действия если изображение найдено ... else ... здесь прописываются действия если изображение не найдено ... end_if hset($w,0) //деактивация окна Цикл поиска изображений из массива: Код: $c=buy //если нужен анализ алерта на buy/sell $s[0]=eurusd //массив изображений пар $s[1]=gbpusd ... start: $x1= //координата x верхнего правого угла квадрата для анализа $y1= //координата y верхнего правого угла квадрата для анализа $x2= //координата x нижнего левого угла квадрата для анализа $y2= //координата y нижнего левого угла квадрата для анализа for($i=0, $i<arrsize($s)) $sig = strconcat($s[$i],".bmp") $con = strconcat($c,".bmp") //если нужен анализ алерта на buy/sell if_picture_in($x1,$x2,$x1,$x2, $sig) ... здесь прописываются действия если изображение найдено ... $i=100 else waitms(5) end_if end_cyc if($i!101) goto(start) //если изображение не найдено - возврат в начало else ... здесь прописываются действия если изображение найдено ... end_if Код движения курсора с последующим рандомным кликом (для избежания блокировки со стороны брокера за использование...) Код: $f= //значение hWND окна браузера $x1= //координата x верхнего правого угла квадрата для перемещения $y1= //координата y верхнего правого угла квадрата для перемещения $x2= //координата x нижнего левого угла квадрата для перемещения $y2= //координата y нижнего левого угла квадрата для перемещения hset($f,1) //активация окна move(rnd($x1,$x2),rnd($y1,$y2)) lclick($x_mouse,$y_mouse)
Пример полностью рабочего кода с мартином: Код: $a=4457272 $w=4983168 $o=6555094 $arr[0]=100 $arr[1]=225 $arr[2]=506 $arr[3]=1139 $arr[4]=2563 $arr[5]=5767 go: define($meurusd=0) sub(martin) $martineurusd=0 while($martineurusd=0) hset($o,1) getscreen(1700,1000,1900,1030) if_picture_in(1700,1000,1900,1030,"eurusdmin.bmp") if_pixel_in(1850,1000,1900,1030,7186218) $martineurusd=1 $meurusd=0 hset($o,0) waitms(100) else if_pixel_in(1850,1000,1900,1030,3823071) $martineurusd=1 inc($meurusd,1) hset($o,0) waitms(100) else if_pixel_in(1850,1000,1900,1030,16777215) $martineurusd=1 hset($o,0) waitms(10) end_if end_if end_if end_if end_cyc end_sub sub(m0) ldown(rnd(1860,1870),rnd(365,375)) lup(rnd(1755,1760),rnd(365,375)) keystring($arr[0]) end_sub sub(m1) ldown(rnd(1860,1870),rnd(365,375)) lup(rnd(1755,1760),rnd(365,375)) keystring($arr[1]) end_sub sub(m2) ldown(rnd(1860,1870),rnd(365,375)) lup(rnd(1755,1760),rnd(365,375)) keystring($arr[2]) end_sub sub(m3) ldown(rnd(1860,1870),rnd(365,375)) lup(rnd(1755,1760),rnd(365,375)) keystring($arr[3]) end_sub sub(m4) ldown(rnd(1860,1870),rnd(365,375)) lup(rnd(1755,1760),rnd(365,375)) keystring($arr[4]) end_sub sub(m5) ldown(rnd(1860,1870),rnd(365,375)) lup(rnd(1755,1760),rnd(365,375)) keystring($arr[5]) end_sub while(wndfind("Алерт")=0) waitms(100) goto(go) end_cyc hset($w,1) getscreen if_pixel_in(387,698,391,784,32768) inc($buy,1) end_if if_pixel_in(387,698,391,784,255) inc($sell,1) end_if if_pixel_in(387,753,391,807,32768) inc($buy,1) end_if if_pixel_in(387,753,391,807,255) inc($sell,1) end_if if_pixel_in(387,812,391,859,32768) inc($buy,1) end_if if_pixel_in(387,812,391,859,255) inc($sell,1) end_if if($buy=3) hset($o,1) lclick(rnd(1810,1850),rnd(545,555)) hset($o,0) wait(300) martin() wait(rnd(5,15)) hset($o,1) if($meurusd=0) m0() end_if if($meurusd=1) m1() end_if if($meurusd=2) m2() end_if if($meurusd=3) m3() end_if if($meurusd=4) m4() end_if if($meurusd=5) m5() end_if end_if if($sell=3) hset($o,1) lclick(rnd(1810,1850),rnd(599,609)) hset($o,0) wait(300) martin() wait(rnd(5,15)) hset($o,1) if($meurusd=0) m0() end_if if($meurusd=1) m1() end_if if($meurusd=2) m2() end_if if($meurusd=3) m3() end_if if($meurusd=4) m4() end_if if($meurusd=5) m5() end_if end_if hset($a,1) keypress(#enter) hset($a,0) $buy=0 $sell=0 goto(go)
Пример полностью рабочего кода с 20 парами: Код: $t=1639548 $f=459952 $a=262598 $s[0]=audcad $s[1]=audchf $s[2]=audjpy $s[3]=audnzd $s[4]=audusd $s[5]=euraud $s[6]=eurcad $s[7]=eurchf $s[8]=eurgbp $s[9]=eurjpy $s[10]=eurnzd $s[11]=eurusd $s[12]=gbpaud $s[13]=gbpchf $s[14]=gbpjpy $s[15]=gbpnzd $s[16]=nzdusd $s[17]=usdcad $s[18]=usdchf $s[19]=usdjpy hset($t,1) arrpush($w,hget(230,150)) arrpush($w,hget(230,380)) arrpush($w,hget(230,610)) arrpush($w,hget(230,850)) arrpush($w,hget(610,150)) arrpush($w,hget(610,380)) arrpush($w,hget(610,610)) arrpush($w,hget(610,850)) arrpush($w,hget(1000,150)) arrpush($w,hget(1000,380)) arrpush($w,hget(1000,610)) arrpush($w,hget(1000,850)) arrpush($w,hget(1380,150)) arrpush($w,hget(1380,380)) arrpush($w,hget(1380,610)) arrpush($w,hget(1380,850)) arrpush($w,hget(1760,150)) arrpush($w,hget(1760,380)) arrpush($w,hget(1760,610)) arrpush($w,hget(1760,850)) hset($t,0) sub(seebuy) hset($w[$n],1) getscreen screenshot if_pixel_in(185,72,209,102,32768) inc($buy,1) end_if if_pixel_in(185,106,209,136,32768) inc($buy,1) end_if if_pixel_in(185,140,209,170,32768) inc($buy,1) end_if hset($w[$n],0) end_sub sub(seesell) hset($w[$n],1) getscreen screenshot if_pixel_in(185,72,209,102,255) inc($sell,1) end_if if_pixel_in(185,106,209,136,255) inc($sell,1) end_if if_pixel_in(185,140,209,170,255) inc($sell,1) end_if hset($w[$n],0) end_sub sub(select) hset($f,1) move(rnd(500,560),rnd(355,370)) lclick($x_mouse,$y_mouse) if($n=0) move(rnd(500,560),rnd(355,370)) lclick($x_mouse,$y_mouse) end_if if($n=1) move(rnd(500,560),rnd(405,420)) lclick($x_mouse,$y_mouse) end_if if($n=2) move(rnd(500,560),rnd(455,470)) lclick($x_mouse,$y_mouse) end_if if($n=3) move(rnd(500,560),rnd(505,520)) lclick($x_mouse,$y_mouse) end_if if($n=4) move(rnd(500,560),rnd(555,570)) lclick($x_mouse,$y_mouse) end_if if($n=5) move(rnd(500,560),rnd(355,370)) lclick($x_mouse,$y_mouse) end_if if($n=6) move(rnd(500,560),rnd(405,420)) lclick($x_mouse,$y_mouse) end_if if($n=7) move(rnd(500,560),rnd(455,470)) lclick($x_mouse,$y_mouse) end_if if($n=8) move(rnd(500,560),rnd(505,520)) lclick($x_mouse,$y_mouse) end_if if($n=9) move(rnd(500,560),rnd(555,570)) lclick($x_mouse,$y_mouse) end_if if($n=10) move(rnd(500,560),rnd(605,620)) lclick($x_mouse,$y_mouse) end_if if($n=11) move(rnd(500,560),rnd(655,670)) lclick($x_mouse,$y_mouse) end_if if($n=12) move(rnd(500,560),rnd(555,570)) lclick($x_mouse,$y_mouse) end_if if($n=13) move(rnd(500,560),rnd(605,620)) lclick($x_mouse,$y_mouse) end_if if($n=14) move(rnd(500,560),rnd(655,670)) lclick($x_mouse,$y_mouse) end_if if($n=15) move(rnd(500,560),rnd(705,720)) lclick($x_mouse,$y_mouse) end_if if($n=16) move(rnd(500,560),rnd(755,770)) lclick($x_mouse,$y_mouse) end_if if($n=17) move(rnd(500,560),rnd(805,820)) lclick($x_mouse,$y_mouse) end_if if($n=18) move(rnd(500,560),rnd(855,870)) lclick($x_mouse,$y_mouse) end_if if($n=19) move(rnd(500,560),rnd(905,920)) lclick($x_mouse,$y_mouse) end_if end_sub sub(buy) wait(rnd(1,2)) move(rnd(1315,1400),rnd(500,535)) lclick($x_mouse,$y_mouse) end_sub sub(sell) wait(rnd(1,2)) move(rnd(1315,1400),rnd(630,665)) lclick($x_mouse,$y_mouse) end_sub go: while(wndfind("Алерт")=0) waitms(5) goto(go) end_cyc hset($a,1) getscreen screenshot keypress(#enter) hset($a,0) for($i=0, $i<arrsize($s)) $sig = strconcat($s[$i],".bmp") if_picture_in(75,45,165,60, $sig) if_picture_in(75,45,165,60, "buy.bmp") $buy=1 $n=$i else $sell=1 $n=$i end_if $i=100 else waitms(5) end_if end_cyc if($i!101) goto(go) else if($buy=1) $buy=0 seebuy() if($buy=3) select() buy() skip: end_if end_if if($sell=1) $sell=0 seesell() if($sell=3) select() sell() skip: end_if end_if end_if hset($f,0) goto(go)
Пример полностью рабочего кода с действием при смене изображения(на данном примере стрелы вверх и вниз): Код: $a=264414 $w=4916638 $o=10290244 $tel=0 go: while(wndfind("Алерт")=0) waitms(100) goto(go) end_cyc hset($a,1) keypress(#enter) hset($w,1) getscreen hset($w,0) if($tel=1) if_picture_in(319,789,329,888,"telb.bmp") else if_picture_in(319,789,329,888,"tels.bmp") else $tel=0 end_if end_if else goto(go) end_if if($tel=0) if_picture_in(319,789,329,888,"tels.bmp") $buy=1 $tel=1 else if_picture_in(319,789,329,888,"telb.bmp") $sell=1 $tel=1 end_if end_if end_if if($buy=1) hset($o,1) lclick(rnd(1810,1850),rnd(545,555)) hset($o,0) end_if if($sell=1) hset($o,1) lclick(rnd(1810,1850),rnd(599,609)) hset($o,0) end_if $buy=0 $sell=0 goto(go) можно так же смену цвета: изменить picture на pixel и вместо "telb.bmp" и "tels.bmp" указать код цвета
Пример(под олимп) для полностью независимой друг от друга торговли по 4 парам с отдельным мартином для каждой пары: Код: //////////////////////////////////////////////////////////////////////////////// $walert=2361006 $wolymp=263154 //////////////////////////////////////////////////////////////////////////////// while(wndfind("Алерт")=0) waitms(1) end_cyc hset($walert,1) getscreen KEYPRESS(#ENTER) hset($wolymp,1) //////////////////////////////////////////////////////////////////////////////// if_picture_in(75,45,180,65,"usdcad.bmp") lclick(rnd(660,670),rnd(155,160)) if_picture_in(75,45,180,65,"call.bmp") $usdcadbuy=1 SetThread(usdcad,1) else $usdcadsell=1 SetThread(usdcad,1) end_if end_if if_picture_in(75,45,180,65,"eurusd.bmp") lclick(rnd(100,110),rnd(155,160)) if_picture_in(75,45,180,65,"call.bmp") $eurusdbuy=1 SetThread(eurusd,1) else $eurusdsell=1 SetThread(eurusd,1) end_if end_if if_picture_in(75,45,180,65,"gbpusd.bmp") lclick(rnd(280,290),rnd(155,160)) if_picture_in(75,45,180,65,"call.bmp") $gbpusdbuy=1 SetThread(gbpusd,1) else $gbpusdsell=1 SetThread(gbpusd,1) end_if end_if if_picture_in(75,45,180,65,"audusd.bmp") lclick(rnd(480,490),rnd(155,160)) if_picture_in(75,45,180,65,"call.bmp") $audusdbuy=1 SetThread(audusd,1) else $audusdsell=1 SetThread(audusd,1) end_if end_if //////////////////////////////////////////////////////////////////////////////// thread(usdcad,0) define($musdcad=0) sub(martin) $martinusdcad=0 while($martinusdcad=0) getscreen(1700,1000,1900,1020) if_picture_in(1700,1000,1900,1020,"usdcadmin.bmp") if_pixel_in(1700,1000,1900,1020,7186218) $martinusdcad=1 $musdcad=0 waitms(10) else if_pixel_in(1700,1000,1900,1020,3823071) $martinusdcad=1 inc($musdcad,1) waitms(10) else if_pixel_in(1700,1000,1900,1020,16777212) $martinusdcad=1 waitms(10) end_if end_if end_if end_if end_cyc end_sub sub(m0) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("30") end_sub sub(m1) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("68") end_sub sub(m2) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("153") end_sub sub(m3) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("344") end_sub sub(m4) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("774") end_sub sub(m5) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("1741") end_sub if($usdcadbuy=1) hset($wolymp,1) if($musdcad=0) m0() end_if if($musdcad=1) m1() end_if if($musdcad=2) m2() end_if if($musdcad=3) m3() end_if if($musdcad=4) m4() end_if if($musdcad=5) m5() end_if lclick(rnd(1800,1840),rnd(545,560)) hset($wolymp,0) $usdcadbuy=0 end_if if($usdcadsell=1) hset($wolymp,1) if($musdcad=0) m0() end_if if($musdcad=1) m1() end_if if($musdcad=2) m2() end_if if($musdcad=3) m3() end_if if($musdcad=4) m4() end_if if($musdcad=5) m5() end_if lclick(rnd(1800,1840),rnd(595,610)) hset($wolymp,0) $usdcadsell=0 end_if wait(302) martin() SetThread(usdcad,0) end_thread //////////////////////////////////////////////////////////////////////////////// thread(eurusd,0) define($meurusd=0) sub(martin) $martineurusd=0 while($martineurusd=0) getscreen(1700,1000,1900,1020) if_picture_in(1700,1000,1900,1020,"eurusdmin.bmp") if_pixel_in(1700,1000,1900,1020,7186218) $martineurusd=1 $meurusd=0 waitms(10) else if_pixel_in(1700,1000,1900,1020,3823071) $martineurusd=1 inc($meurusd,1) waitms(10) else if_pixel_in(1700,1000,1900,1020,16777212) $martineurusd=1 waitms(10) end_if end_if end_if end_if end_cyc end_sub sub(m0) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("30") end_sub sub(m1) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("68") end_sub sub(m2) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("153") end_sub sub(m3) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("344") end_sub sub(m4) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("774") end_sub sub(m5) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("1741") end_sub if($eurusdbuy=1) hset($wolymp,1) if($meurusd=0) m0() end_if if($meurusd=1) m1() end_if if($meurusd=2) m2() end_if if($meurusd=3) m3() end_if if($meurusd=4) m4() end_if if($meurusd=5) m5() end_if lclick(rnd(1800,1840),rnd(545,560)) hset($wolymp,0) $eurusdbuy=0 end_if if($eurusdsell=1) hset($$wolymp,1) if($meurusd=0) m0() end_if if($meurusd=1) m1() end_if if($meurusd=2) m2() end_if if($meurusd=3) m3() end_if if($meurusd=4) m4() end_if if($meurusd=5) m5() end_if lclick(rnd(1800,1840),rnd(595,610)) hset($wolymp,0) $eurusdsell=0 end_if martin() SetThread(eurusd,0) end_thread //////////////////////////////////////////////////////////////////////////////// thread(gbpusd,0) define($mgbpusd=0) sub(martin) $martingbpusd=0 while($martingbpusd=0) getscreen(1700,1000,1900,1020) if_picture_in(1700,1000,1900,1020,"gbpusdmin.bmp") if_pixel_in(1700,1000,1900,1020,7186218) $martingbpusd=1 $mgbpusd=0 waitms(10) else if_pixel_in(1700,1000,1900,1020,3823071) $martingbpusd=1 inc($mgbpusd,1) waitms(10) else if_pixel_in(1700,1000,1900,1020,16777212) $martingbpusd=1 waitms(10) end_if end_if end_if end_if end_cyc end_sub sub(m0) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("30") end_sub sub(m1) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("68") end_sub sub(m2) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("153") end_sub sub(m3) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("344") end_sub sub(m4) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("774") end_sub sub(m5) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("1741") end_sub if($gbpusdbuy=1) hset($wolymp,1) if($mgbpusd=0) m0() end_if if($mgbpusd=1) m1() end_if if($mgbpusd=2) m2() end_if if($mgbpusd=3) m3() end_if if($mgbpusd=4) m4() end_if if($mgbpusd=5) m5() end_if lclick(rnd(1800,1840),rnd(545,560)) hset($wolymp,0) $gbpusdbuy=0 end_if if($gbpusdsell=1) hset($wolymp,1) if($mgbpusd=0) m0() end_if if($mgbpusd=1) m1() end_if if($mgbpusd=2) m2() end_if if($mgbpusd=3) m3() end_if if($mgbpusd=4) m4() end_if if($mgbpusd=5) m5() end_if lclick(rnd(1800,1840),rnd(595,610)) hset($wolymp,0) $gbpusdsell=0 end_if wait(302) martin() SetThread(gbpusd,0) end_thread //////////////////////////////////////////////////////////////////////////////// thread(audusd,0) define($maudusd=0) sub(martin) $martinaudusd=0 while($martinaudusd=0) getscreen(1700,1000,1900,1020) if_picture_in(1700,1000,1900,1020,"audusdmin.bmp") if_pixel_in(1700,1000,1900,1020,7186218) $martinaudusd=1 $maudusd=0 waitms(10) else if_pixel_in(1700,1000,1900,1020,3823071) $martinaudusd=1 inc($maudusd,1) waitms(10) else if_pixel_in(1700,1000,1900,1020,16777212) $martinaudusd=1 waitms(10) end_if end_if end_if end_if end_cyc end_sub sub(m0) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("30") end_sub sub(m1) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("68") end_sub sub(m2) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("153") end_sub sub(m3) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("344") end_sub sub(m4) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("774") end_sub sub(m5) ldown(rnd(1860,1870),rnd(360,370)) lup(rnd(1765,1770),rnd(360,370)) keystring("1741") end_sub if($audusdbuy=1) hset($wolymp,1) if($maudusd=0) m0() end_if if($maudusd=1) m1() end_if if($maudusd=2) m2() end_if if($maudusd=3) m3() end_if if($maudusd=4) m4() end_if if($maudusd=5) m5() end_if lclick(rnd(1800,1840),rnd(545,560)) hset($wolymp,0) $audusdbuy=0 end_if if($audusdsell=1) hset($wolymp,1) if($maudusd=0) m0() end_if if($maudusd=1) m1() end_if if($maudusd=2) m2() end_if if($maudusd=3) m3() end_if if($maudusd=4) m4() end_if if($maudusd=5) m5() end_if lclick(rnd(1800,1840),rnd(595,610)) hset($wolymp,0) $audusdsell=0 end_if wait(302) martin() SetThread(audusd,0) end_thread ////////////////////////////////////////////////////////////////////////////////
Пример отбраковки сигнала 1) Не соблюдение условий ТС 2) Низкая выплата: Код: $t=18876554 $o=11995406 $a=3278548 $c=buy $s[0]=eurusd $s[1]=gbpusd $s[2]=usdchf $s[3]=usdmxn $s[4]=usdnok $s[5]=usdrub $s[6]=eurgbp $s[7]=audchf $s[8]=cadjpy $s[9]=chfjpy $s[10]=gbpaud $s[11]=gbpcad $s[12]=gbpchf $s[13]=gbpjpy $s[14]=nzdcad $s[15]=nzdchf $s[16]=nzdjpy $s[17]=usdjpy $s[18]=audusd $s[19]=usdcad $s[20]=gbpnzd $s[21]=usdsgd $s[22]=eurnzd $s[23]=audjpy $s[24]=cadchf $s[25]=audcad $s[26]=eurcad $s[27]=euraud $s[28]=eurrub $s[29]=audnzd $s[30]=nzdusd $s[31]=usdtry $s[32]=eurchf $s[33]=eurjpy $s[34]=ftse100 $s[35]=nasdaq hset($t,1) arrpush($w,hget(230,170)) arrpush($w,hget(230,320)) arrpush($w,hget(230,470)) arrpush($w,hget(230,630)) arrpush($w,hget(230,780)) arrpush($w,hget(230,930)) arrpush($w,hget(550,170)) arrpush($w,hget(550,320)) arrpush($w,hget(550,470)) arrpush($w,hget(550,630)) arrpush($w,hget(550,780)) arrpush($w,hget(550,930)) arrpush($w,hget(860,170)) arrpush($w,hget(860,320)) arrpush($w,hget(860,470)) arrpush($w,hget(860,630)) arrpush($w,hget(860,780)) arrpush($w,hget(860,930)) arrpush($w,hget(1170,170)) arrpush($w,hget(1170,320)) arrpush($w,hget(1170,470)) arrpush($w,hget(1170,630)) arrpush($w,hget(1170,780)) arrpush($w,hget(1170,920)) arrpush($w,hget(1480,170)) arrpush($w,hget(1480,320)) arrpush($w,hget(1480,470)) arrpush($w,hget(1480,630)) arrpush($w,hget(1480,780)) arrpush($w,hget(1480,930)) arrpush($w,hget(1810,170)) arrpush($w,hget(1810,320)) arrpush($w,hget(1810,470)) arrpush($w,hget(1810,630)) arrpush($w,hget(1810,780)) arrpush($w,hget(1810,930)) hset($t,0) sub(see) hset($w[$n],1) getscreen if_pixel_in(163,43,167,43,32768) inc($buy,1) end_if if_pixel_in(163,43,167,43,255) inc($sell,1) end_if if_pixel_in(163,66,167,66,32768) inc($buy,1) end_if if_pixel_in(163,66,167,66,255) inc($sell,1) end_if if_pixel_in(163,86,167,86,32768) inc($buy,1) end_if if_pixel_in(163,86,167,86,255) inc($sell,1) end_if hset($w[$n],0) end_sub sub(select) hset($o,1) lclick(rnd(24,33),rnd(163,172)) waitms(100) lclick(rnd(230,280),rnd(260,265)) keypress(#backspace) waitms(50) keypress(#backspace) waitms(50) keypress(#backspace) waitms(50) keypress(#backspace) waitms(50) keypress(#backspace) waitms(50) keypress(#backspace) waitms(50) keypress(#backspace) waitms(50) keystring(strcut($sig,1,6)) wait(rnd(1,3)) getscreen if_picture_in(215,370,225,380,"8.bmp") lclick(rnd(85,100),rnd(370,380)) else if_picture_in(215,370,225,380,"7.bmp") lclick(rnd(85,100),rnd(370,380)) else lclick(rnd(24,33),rnd(163,172)) $sig = strconcat($s[$n],".bmp") logwrite("Сигнал: ",strcut($sig,1,6)," отбракован - Цена актива ниже 70%") goto(skip) end_if end_if end_sub sub(buy) wait(rnd(1,3)) lclick(rnd(1810,1850),rnd(545,555)) hset($o,0) end_sub sub(sell) wait(rnd(1,3)) lclick(rnd(1810,1850),rnd(599,609)) hset($o,0) end_sub go: while(wndfind("Алерт")=0) waitms(100) goto(go) end_cyc hset($a,1) getscreen keypress(#enter) hset($a,0) for($i=0, $i<arrsize($s)) $sig = strconcat($s[$i],".bmp") $con = strconcat($c,".bmp") if_picture_in(77,49,125,58, $sig) if_picture_in(130,49,160,58, $con) logwrite("Сигнал: ",strcut($sig,1,6)," Покупка") $buy=1 $n=$i else logwrite("Сигнал: ",strcut($sig,1,6)," Продажа") $sell=1 $n=$i end_if $i=100 else waitms(5) end_if end_cyc if($i!101) goto(go) else if($buy=1) $buy=0 see() if($buy=3) select() buy() logwrite("Сделка: ",strcut($sig,1,6)," совершена") skip: else $sig = strconcat($s[$n],".bmp") logwrite("Сигнал: ",strcut($sig,1,6)," отбракован - Условия не соблюдены") end_if end_if if($sell=1) $sell=0 see() if($sell=3) select() sell() logwrite("Сделка: ",strcut($sig,1,6)," совершена") skip: else $sig = strconcat($s[$n],".bmp") logwrite("Сигнал: ",strcut($sig,1,6)," отбракован - Условия не соблюдены") end_if end_if end_if hset($o,0) goto(go)
Так же как и вышеприведенные коды. Неделю настраивать придется А кто не разбирается в этих кодах, вообще шансов нет.
Настраивать ничего не надо! Это бессмысленно! Потратить пару часов на изучение справки и пару часов на написание скрипта - ну да. Неделя))))))) Кому надо - тот разберется сам или спросит...
Вышеприведенные коды только для примера реализации той или иной ситуации. Написание любой!!! программы состоит из а)набора условий и б)визуальной реализации. Здесь б) не нужно. Что сложного в: 1)если цвет/картинка/условие найдено - то делаем это, 2)если не найдено - то делаем другое или ничего не делаем???
Есть цикл Код: while(условие) waitms(100) //обязательная пауза в 100 миллисекунд для разгрузки процессора //останавливает выполнение скрипта до выполнения условия end_cyc И условия Код: if(условие) //если условие верно, то выполняем то, что ниже ... else //усли условие не верно, то выполняем то, что ниже ... end //конец условия
Есть подпрограммы, чтоб не писать один и тот же код много раз (аналог функций в языках программирования) Код: sub(название) ... //здесь указан код, который будет выполнятся каждый раз при вызове end_sub //конец описания ... //какой-то код название() //запуск подпрограммы название() //повторный запуск и т.д.
Извиняюсь за ошибку: $x1= //координата x верхнего левого угла квадрата для анализа $y1= //координата y верхнего левого угла квадрата для анализа $x2= //координата x нижнего правого угла квадрата для анализа $y2= //координата y нижнего правого угла квадрата для анализа