рдХреИрд╕реЗ рдФрд░ рдХреНрдпреЛрдВ рдореИрдВрдиреЗ Tradingview рд╡реЗрдмрд╕рд╛рдЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд╛рд░реНрд╕рд░ рд▓рд┐рдЦрд╛ред DIY рд╡реНрдпрд╛рдкрд╛рд░ рд╕реНрд╡рдЪрд╛рд▓рди

рд╕рдорд╕реНрдпрд╛: рдлрд┐рд▓рд╣рд╛рд▓, рд░реВрд╕реА рд╕реНрдЯреЙрдХ рдорд╛рд░реНрдХреЗрдЯ рдореЗрдВ рдЯреНрд░реЗрдбрд┐рдВрдЧ рдСрдЯреЛрдореЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдкреВрд░реНрдг рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ (рдЗрд╕рдХреЗ рдмрд╛рдж рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ ) рдХреБрдЦреНрдпрд╛рдд TSLAB рд╣реИ ред


рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рджреГрд╢реНрдп рд╕рдВрдкрд╛рджрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд╕реНрд╕рдВрджреЗрд╣ рдлрд╛рдпрджреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЬреЛ рдЖрдкрдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдХреЗ рдЬреНрдЮрд╛рди рдХреЗ рдмрд┐рдирд╛ рднреА рд░реЛрдмреЛрдЯ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдРрд╕реЗ рдХрдИ рдиреБрдХрд╕рд╛рди рд╣реИрдВ рдЬреЛ рдЗрд╕ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдореЗрд░реЗ рд▓рд┐рдП рдмреЗрд╣рдж рд▓рд╛рднрдХрд╛рд░реА рд╣реИрдВред рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рди рдХреЗрд╡рд▓ рдореЗрд░реЗ рд▓рд┐рдП, рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ рдореЛрд╕рдмреАрд░рдЬрд╝ рдкрд░ рдПрдХ рдЦрд╛рддреЗ рдХрд╛ рдФрд╕рдд рдЖрдХрд╛рд░ 500 рд╣рдЬрд╛рд░ рд░реВрдмрд▓ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИред


1. рд▓рд╛рдЧрдд: рдкреНрд░рддрд┐ рдорд╛рд╣ 4500 рд░реВрдмрд▓ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд╢реБрд▓реНрдХ + рдПрдХ рдЖрднрд╛рд╕реА рд╕рд░реНрд╡рд░ рдХрд╛ рдХрд┐рд░рд╛рдпрд╛ (рдкреНрд░рддрд┐ рдорд╛рд╣ 1000 рд░реВрдмрд▓)
рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд▓рд╛рдЧрдд рдореЗрд░реЗ рд╡реНрдпрд╛рдкрд╛рд░ рдХреЗ рд╡рд┐рддреНрддреАрдп рдкрд░рд┐рдгрд╛рдо рдкрд░ рдмрд╣реБрдд рднрд╛рд░реА рдмреЛрдЭ рдбрд╛рд▓рддреА рд╣реИред рдЗрд╕рд▓рд┐рдП, 500 рд╣рдЬрд╛рд░ рд░реВрдмрд▓ рдХрд╛ рдЦрд╛рддрд╛ рдЖрдХрд╛рд░ рд╣реЛрдирд╛ рдФрд░ рдЗрд╕рд╕реЗ рдкреНрд░рддрд┐ рд╡рд░реНрд╖ рдХрдо рд╕реЗ рдХрдо 20% рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЙрдореНрдореАрдж рд╣реИ, рдореМрдЬреВрджрд╛ рд▓рд╛рдЧрдд рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рдпреЛрдЬрдирд╛рдмрджреНрдз рд▓рд╛рднрдкреНрд░рджрддрд╛ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ 32-35% рдХрдорд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред


2. рдХрд╛рдо рдХреА рдЕрд╕реНрдерд┐рд░рддрд╛: рдЗрд╕ рддрдереНрдп рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ рдореЗрд░реЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдмрд╛рдЬрд╛рд░ рдХреЗ рдЖрджреЗрд╢реЛрдВ (рдкреНрд░рдХрд╛рд░ рдХреЗ рдЖрджреЗрд╢, рдЬреЛ 100% рдирд┐рд╖реНрдкрд╛рджрди рдХреЛ рдорд╛рдирддреЗ рд╣реИрдВ) рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ, рдореЗрд░реА рд╕реНрдерд┐рддрд┐ рдЕрдХреНрд╕рд░ рджреЛрдЧреБрдиреА рд╣реЛ рдЬрд╛рддреА рд╣реИ рдпрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред


рдЙрджреНрджреЗрд╢реНрдп: рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рд╕рд╛рде рдирд┐рд╢реНрдЪрд┐рдд рд▓рд╛рдЧрдд рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрдбрд┐рдВрдЧ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд▓рд┐рдЦреЗрдВ рдЬреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рднреА рдЧрд╣рди рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдЬреНрдЮрд╛рди рдХреЗ рдмрд┐рдирд╛ рдЯреНрд░реЗрдбрд┐рдВрдЧ рд░реЛрдмреЛрдЯ рд▓рд┐рдЦрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред


рд╡рд░реНрддрдорд╛рди рдФрд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдФрд░ рдирд┐рдпреЛрдЬрд┐рдд рд╕реБрдзрд╛рд░ рдХреЗ рд╕рд╛рде рдкреВрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЖрдВрдХрдбрд╝реЗ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХреА рдЧрдИ рд╣реИред



рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рд┐рдВрдХ рдирд┐рд╕реНрд╕рдВрджреЗрд╣ Tradingview рд╡реЗрдмрд╕рд╛рдЗрдЯ (рдЗрд╕рдХреЗ рдмрд╛рдж рдЯреАрд╡реА рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджрд░реНрднрд┐рдд) рд╣реИред рдпрд╣ рдмрд┐рд▓реНрдЯ-рдЗрди Pine_Script рднрд╛рд╖рд╛ рдХреЗ рдХрд╛рд░рдг рдЕрдкрдиреА рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИред


рднрд╛рд╖рд╛, рд╡реИрд╕реЗ, рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЬреНрдЮрд╛рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ рдФрд░ рдореВрд▓ рд░реВрдк рд╕реЗ рдореЗрдЯрд╛рд╕реНрдЯреЙрдХ рдкреИрдХреЗрдЬ рдХреА рдЖрд╕рд╛рди рднрд╛рд╖рд╛ рдЬреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ, рдФрд░ рд░реВрд╕реА рдореЗрдВ рдСрдирд▓рд╛рдЗрди рдорджрдж рдХреА рдЙрдкрд▓рдмреНрдзрддрд╛ рдХреЛрдб рдХреЛ рдпрдерд╛рд╕рдВрднрд╡ рд╕реБрдЦрдж рдмрдирд╛рддреА рд╣реИред


рдЪрд▓рддреА рдФрд╕рдд (рд╕рдЪрдореБрдЪ рдХреЛрдб рдХреА рддреАрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдореЗрдВ) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рддреЛрдбрд╝рдиреЗ рдХреА рд░рдгрдиреАрддрд┐ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:


mov_average=sma(close,x) strategy.entry("My Long Entry Id", strategy.long,when=close>mov_average) strategy.entry("My Short Entry Id", strategy.short,when=close<mov_average) 

рдЕрдм рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реЛрдиреЗ рдХреЗ рдирд╛рддреЗ, рдпрд╣ рдЯреАрд╡реА рд╕реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реАрдзреЗ рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо (рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдХреНрд╡рд┐рдХ рдкреНрд░реЛрдЧреНрд░рд╛рдо) рдпрд╛ рдмреНрд░реЛрдХрд░ рдХреЗ рд╕рд░реНрд╡рд░ рдкрд░ рд╕реАрдзреЗ рднреЗрдЬрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИред рдПрдХрдорд╛рддреНрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреАрд╡реА рдХреЗ рдкрд╛рд╕ рдПрдХ рдЦреБрд▓рд╛ рдПрдкреАрдЖрдИ рдирд╣реАрдВ рд╣реИред


рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ, рдореЗрд░реЗ рд▓рд┐рдП рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рдереА рдХрд┐ рд╡реЗрдмрд╕реЗрд▓реЗрдирд┐рдпрдо рдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧ-рдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдФрд░ XPath рд▓реЛрдХреЗрдЯрд░реЛрдВ рдХреЛ рдЦреЛрдЬрдХрд░ рдЙрди рддрддреНрд╡реЛрдВ рдХреЛ рдЦреЛрдЬрдирд╛ рд╣реИ рдЬрд┐рдирдХреА рд╣рдореЗрдВ рдЦрд░реАрджрдиреЗ-рдмреЗрдЪрдиреЗ рдХреЗ рд╕рдВрдХреЗрддреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИрдВред


рд╕рдВрдХреЗрдд рд╕реНрд╡рдпрдВ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рджрд┐рдЦрд╛рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдФрд░ рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рд▓реЗрдХрд┐рди рдЪрд░рдо рд╕рдВрдХреЗрдд рдХреА рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП, рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕реНрдХреНрд░реЙрд▓рд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереА, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕реНрдХреНрд░реЙрд▓рд┐рдВрдЧ рддрддреНрд╡ рдирд╣реАрдВ рдорд┐рд▓рд╛ (рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рдЖрдВрдХрдбрд╝рд╛ рджреЗрдЦреЗрдВ)ред



рдЗрд╕рд▓рд┐рдП, рдореБрдЭреЗ рдПрдХ рдФрд░ рд╕рдорд╛рдзрд╛рди рдХреА рддрд▓рд╛рд╢ рдХрд░рдиреА рдереАред


рдиреЗрддреНрд░рд╣реАрди, рдЯреАрд╡реА рд╕рд┐рдЧреНрдирд▓ рдХреИрдирд╡рд╛рд╕ рддрддреНрд╡ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рд░рдВрдЧ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдЙрджрд╛: рд▓рд╛рд▓-рдмрд┐рдХреНрд░реА, рд╣рд░рд╛-рдЦрд░реАрдж)ред


рдЯреАрд╡реА рдореЗрдВ рдЬреЛ рд░рдВрдЧ рд╣рдо рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реНрд╡рдпрдВ рдЬрд╛рд╡рд╛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рд╕реНрд╡рд┐рдВрдЧрд┐рдВрдЧ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рдЖрдЧреЗ, рд╣рдореЗрдВ рдХреИрдирд╡рд╛рд╕ рдХреНрд╖реЗрддреНрд░ (рдпрд╛ рд╕рд┐рд░реНрдл рд╕реНрдХреИрди рдХрд┐рдП рдЧрдП рдХреНрд╖реЗрддреНрд░) рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣рдо рдирд┐рдпрдВрддреНрд░рдг рд░рдВрдЧреЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдВрдЧреЗред


рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рдЖрдВрдХрдбрд╝рд╛ рддреАрди рдЪрдпрдирд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╡реЗрдмрд╕рд╛рдЗрдЯ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рд▓рд┐рдП рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕рд┐рдЧреНрдирд▓ рдХрд╛ рд░рдВрдЧ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реИред рдпреЗ рд░рдВрдЧ рдореЗрд░реЗ Parse_Signal рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╣реИрдВред


ред


рд╕реНрдХреИрди рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдФрд░ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯ рдХреЗ рдкреНрд░рдХрд╛рд░ рдореЗрдВ рд╕реЗрдЯ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЯреНрд░реЗрдб рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ (рд╡реИрд╕реЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдо рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ 5 рдорд┐рдирдЯ рд▓рдЧрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ .txt рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╡рд╛рд▓реА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред рдЕрдЧрд▓рд╛, "рд╕реНрдЯрд╛рд░реНрдЯ" рдмрдЯрди рджрдмрд╛рдПрдВ рдФрд░ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджреЗрддрд╛ рд╣реИред


рдпрд╣ рджреЛ рдзрд╛рдЧреЛрдВ рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред


1 рдкрд╣рд▓рд╛ рдзрд╛рдЧрд╛:


  • рдЪрдпрдирд┐рдд рдХреНрд╖реЗрддреНрд░ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреИрдирд╡рд╛рд╕) рдХреЛ рд╕реНрдХреИрди рдХрд░рддрд╛ рд╣реИред
    рд╣рдо рд░реЛрдмреЛрдЯ рд╡рд░реНрдЧ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдХреИрди рдХреЛ рд╢рд╛рд╕реНрддреНрд░реАрдп рд░реВрдк рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ:


     BufferedImage buf= robot.createScreenCapture(new Rectangle(selection.x, selection.y, selection.width, selection.height)) 

  • рдЕрдЧрд▓рд╛, рдпрд╣ рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рдПрдХ рд╕рд░рдгреА рдореЗрдВ рдкрд░рд┐рдгрд╛рдореА рд╕реНрдХреИрди рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ:


     int[] pixels = copyFromBufferedImage(buf); //,     ,        : public int[] copyFromBufferedImage(BufferedImage bi) { int[] pict = new int[bi.getHeight() * bi.getWidth()]; for (int i = 0; i < bi.getWidth(); i++) for (int j = 0; j < bi.getHeight(); j++) pict[i * bi.getHeight() + j] = bi.getRGB(i, j) & 0xFFFFFF; // 0xFFFFFF:   3   RGB return pict; 

  • рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕рд┐рдЧреНрдирд▓ рдХреЗ рдирд┐рдпрдВрддреНрд░рдг рд░рдВрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд┐рдХреНрд╕реЗрд▓ рдХреА рд╕рд░рдгреА рдореЗрдВ рдЦреЛрдЬреЗрдВред рдмрд╛рдПрдВ рд╕реЗ рджрд╛рдПрдВ рдЦреЛрдЬреЗрдВред рдпрд╛рдиреА рдпрд╣ рд╕рд╣реА рдкрд┐рдХреНрд╕реЗрд▓ рдХрд╛ рд░рдВрдЧ рд╣реИ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рд▓рд┐рдП рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ:


     for(int i=0;i<pixels.length;i++ ) { if (pixels[i] == (buy.getBackground().getRGB() & 0xFFFFFF)) { position = 1; //System.out.println("  ")} else if (pixels[i] == (sell.getBackground().getRGB() & 0xFFFFFF)) { position = -1; //System.out.println("  ");} else if (pixels[i] == (hold.getBackground().getRGB() & 0xFFFFFF)) { position = 0; ...................... ...................... 


  • рд░рдВрдЧ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдПрдХ рд╡реНрдпрд╛рдкрд╛рд░ рд▓реЗрдирджреЗрди (.tri рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЗ рд╕рд╛рде рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ) рд░рд┐рдХреЙрд░реНрдб рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдХреНрд╡рд┐рдХ рдЯреНрд░реЗрдбрд┐рдВрдЧ рдЯрд░реНрдорд┐рдирд▓ рдореЗрдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ, рдПрдХ рдлрд╝рд╛рдЗрд▓ рд╕реЗ рд▓реЗрдирджреЗрди рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдкрдврд╝рдирд╛ рд╕рдВрднрд╡ рд╣реИред рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдкреИрдЯрд░реНрди рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЙрдиреНрд╣реЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдХреНрд╡рд┐рдХ, рдЬрдм рдПрдХ рдирдИ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ, рддреЛ рджрд▓рд╛рд▓ рдХреЗ рд╕рд░реНрд╡рд░ рдХреЛ рдПрдХ рдЕрдиреБрд░реЛрдз рднреЗрдЬрддрд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╣рд░ 500 ms рдкрд░ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕рд┐рдЧреНрдирд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ рдпрд╛ рддреЛ рдореЗрд▓, рдпрд╛ рдлреЛрди, рдпрд╛ рдЯреНрд░реЗрдбрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рднреЗрдЬреА рдЬрд╛ рд╕рдХрддреА рд╣реИ (рддреАрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдЪреБрдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред 1 рдзрд╛рдЧрд╛ 500 рдПрдордПрд╕ рдХреА рдЖрд╡реГрддреНрддрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред



 if (position==1&&status!=1&&b1==1) { if(dialog.isSend_phone()==true) { new SMS().sendSms(dialog.getPhone(), "TS_1:    "+ (String)dialog.cbFirst.getSelectedItem()+" "+price+" "+new Date(), "TEST-SMS", dialog.getLogin(), dialog.getPassword());} if(dialog.isSend_trade()==true){ tr.Order_Buy();} if(dialog.isSend_mail()==true){ test.sendSignal("BUY","TS_1: Buy in signal at price "+ (String)dialog.cbFirst.getSelectedItem()+" "+price+" "+new Date());} status = 1;} ...................... ...................... 

2 рдХрд╛рд░реНрдпрдХреНрд░рдо рдкреНрд░рд╡рд╛рд╣ рдлрд┐рдирдо рд╕рд╛рдЗрдЯ рдХреЗ HTML рдкреГрд╖реНрда рдХреЛ рдкрд╛рд░реНрд╕ рдХрд░рдХреЗ рдЯреНрд░реЗрдбреЗрдб рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯ рдХреА рдХреАрдордд рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИред JSOUP рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣рд╛рдВ, рдореИрдВ рдмрд╕ html рдкреЗрдЬ рдЕрдкрд▓реЛрдб рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЖрд╡рд╢реНрдпрдХ рдЯреНрд░реЗрдбрд┐рдВрдЧ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯ рдХреЗ рдХреЛрдб рдХреА рдЦреЛрдЬ рдХрд░рддрд╛ рд╣реВрдВ (рдЙрджрд╛: Si, Sber, рдЖрджрд┐)ред


 public void run() { while (true) { Document doc = null; Document doc_2 = null; try { doc = Jsoup.connect("https://www.finam.ru/quotes/futures/moex/").get(); doc_2 = Jsoup.connect("https://www.finam.ru/profile/mosbirzha-fyuchersy/sbrf").get();} catch (IOException e) { e.printStackTrace(); continue;} StringBuffer buffer = new StringBuffer(doc.text()); StringBuffer buffer_2 = new StringBuffer(doc_2.text()); Map<String, String> map = new HashMap<>() try {map.put(elements[1], buffer.substring(buffer.indexOf("Si "), buffer.indexOf("Si ") + 8).split("Si ")[1]); map.put(elements[2], buffer.substring(buffer.indexOf("RTS "), buffer.indexOf("RTS ") + 10).split("RTS ")[1]); map.put(elements[3], buffer.substring(buffer.indexOf("LKOH "), buffer.indexOf("LKOH ") + 10).split("LKOH ")[1]); map.put(elements[4], buffer.substring(buffer.indexOf("BR "), buffer.indexOf("BR ") +8).split("BR ")[1]); map.put(elements[5], buffer.substring(buffer.indexOf("GAZP "), buffer.indexOf("GAZP ") + 10).split("GAZP ")[1]); map.put(elements[6], buffer.substring(buffer.indexOf("GOLD "), buffer.indexOf("GOLD ") + 11).split("GOLD ")[1]); map.put(elements[7], buffer.substring(buffer.indexOf("MOEX "), buffer.indexOf("MOEX ") + 10).split("MOEX ")[1]); map.put(elements[8], buffer.substring(buffer.indexOf("MIX "), buffer.indexOf("MIX ") + 10).split("MIX ")[1]); map.put(elements[9], "0"); map.put(elements[10], buffer_2.substring(buffer_2.indexOf("  "), buffer_2.indexOf("  ") + 23).split(" ")[2] + buffer_2.substring(buffer_2.indexOf("  "), buffer_2.indexOf("  ") + 23).split(" ")[3]);} catch (Exception e) { System.out.println(e); text.setText("     "); continue;} price = String.valueOf((int) Double.parseDouble(map.get((String) 

рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдПрдХ рдХрдордЬреЛрд░ рдХрдбрд╝реА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ html рдкреГрд╖реНрда рдореЗрдВ рдХреЛрдИ рднреА рдкрд░рд┐рд╡рд░реНрддрди рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХ рджреЗрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕реЗ рд╕реАрдзреЗ рдХреНрд╡рд┐рдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛ рдмреНрд░реЛрдХрд░ рдХреЗ рд╕рд░реНрд╡рд░ рд╕реЗ рд╕реАрдзреЗ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд┐рдирд┐рдордп рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк C # рдореЗрдВ рдХреНрд╡рд┐рдХ рдХреЗ рд▓рд┐рдП рд░реЗрдбреАрдореЗрдб .dll рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЬрдм рд╕реЗ рдореИрдВ рдЬрд╛рд╡рд╛ рдореЗрдВ рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд▓реВрдЖ (рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХреНрд╡рд┐рдХ рднрд╛рд╖рд╛) рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛, рдЬреЛ рдПрдХ рдЕрд▓рдЧ рдлрд╛рдЗрд▓ рдореЗрдВ рдЦрд░реАрдж рдФрд░ рдмрд┐рдХреНрд░реА рдХреА рдХреАрдорддреЛрдВ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░реЗрдЧрд╛, рдЬреЛ рдХрд┐ рдХрд╛рд░реНрдпрдХреНрд░рдо Parse_Signal рдФрд░ рдлрд┐рд░ рдкрдврд╝реЗрдВрдЧреЗред


рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рдореЗрдВ рдЯреАрд╡реА + рдкрд╛рд░реНрд╕рд░ + рдХреНрд╡рд┐рдХ рдХреЗ рдмрдЬрд╛рдп рднрд╛рд░реА рдЧреБрдЪреНрдЫрд╛ рдорд┐рд▓рддрд╛ рд╣реИред рдФрд░ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдЗрд╕реЗ рдХреНрд╡рд┐рдХ рдХреЛ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рд╕реАрдзреЗ рдмреНрд░реЛрдХрд░ рдХреЗ рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬрдиреЗ рдХреА рдпреЛрдЬрдирд╛ рд╣реИ ( рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдПрд▓реЛрд░рд╛ рд╕реЗ рдПрдЯрд▓реЗрдВрдЯрд┐рд╕ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ )ред рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд╕реА # рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдХреБрдЫ рдХреЗ рд╕рд╛рде рдЖрдирд╛ рд╣реЛрдЧрд╛ред


рдЗрд╕ рдХрд╛рд░реНрдпрдХреНрд░рдо рдиреЗ рдореБрдЭреЗ рдЕрдкрдиреЗ рд▓рд┐рдП рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА:
рдирд┐рд╢реНрдЪрд┐рдд рд▓рд╛рдЧрддреЛрдВ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдкрд░ред


рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛрдб рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореЗрдВ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред


рдпрджрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдЯреАрд╡реА рдХреЗ рд╕рд╛рде рдмрд╛рддрдЪреАрдд рдХрд░рдиреЗ рдкрд░ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИ, рддреЛ рдореБрдЭреЗ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдпрд╣ рджреЗрдЦрдХрд░ рдмрд╣реБрдд рдЦреБрд╢реА рд╣реЛрдЧреАред

Source: https://habr.com/ru/post/hi447912/


All Articles